<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>NVTX C API Reference: nvToolsExt.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr id="projectrow">
  <td id="projectalign">
   <div id="projectname">NVTX C API Reference<span id="projectnumber">&#160;v3</span>
   </div>
   <div id="projectbrief">NVIDIA Tools Extension Library</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function() { init_codefold(0); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>

<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="dir_48b95086e7eb28d79ef283b47c5fa0c6.html">nvtx3</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="headertitle"><div class="title">nvToolsExt.h</div></div>
</div><!--header-->
<div class="contents">
<a href="nv_tools_ext_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="comment">/*</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span><span class="comment"> * SPDX-FileCopyrightText: Copyright (c) 2009-2025 NVIDIA CORPORATION &amp; AFFILIATES. All rights reserved.</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span><span class="comment"> * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception</span></div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span><span class="comment"> *</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno">    5</span><span class="comment"> * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno">    6</span><span class="comment"> * you may not use this file except in compliance with the License.</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno">    7</span><span class="comment"> * You may obtain a copy of the License at</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno">    8</span><span class="comment"> *</span></div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno">    9</span><span class="comment"> *     http://www.apache.org/licenses/LICENSE-2.0</span></div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno">   10</span><span class="comment"> *</span></div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno">   11</span><span class="comment"> * Unless required by applicable law or agreed to in writing, software</span></div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno">   12</span><span class="comment"> * distributed under the License is distributed on an &quot;AS IS&quot; BASIS,</span></div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno">   13</span><span class="comment"> * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.</span></div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno">   14</span><span class="comment"> * See the License for the specific language governing permissions and</span></div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno">   15</span><span class="comment"> * limitations under the License.</span></div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno">   16</span><span class="comment"> *</span></div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno">   17</span><span class="comment"> * Licensed under the Apache License v2.0 with LLVM Exceptions.</span></div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno">   18</span><span class="comment"> * See https://nvidia.github.io/NVTX/LICENSE.txt for license information.</span></div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno">   19</span><span class="comment"> */</span></div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno">   20</span> </div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno">   24</span><span class="comment">/* ========================================================================= */</span></div>
<div class="line"><a id="l00161" name="l00161"></a><span class="lineno">  161</span><span class="preprocessor">#if defined(NVTX_VERSION) &amp;&amp; NVTX_VERSION &lt; 3</span></div>
<div class="line"><a id="l00162" name="l00162"></a><span class="lineno">  162</span><span class="preprocessor">#error &quot;Trying to #include NVTX version 3 in a source file where an older NVTX version has already been included.  If you are not directly using NVTX (the NVIDIA Tools Extension library), you are getting this error because libraries you are using have included different versions of NVTX.  Suggested solutions are: (1) reorder #includes so the newest NVTX version is included first, (2) avoid using the conflicting libraries in the same .c/.cpp file, or (3) update the library using the older NVTX version to use the newer version instead.&quot;</span></div>
<div class="line"><a id="l00163" name="l00163"></a><span class="lineno">  163</span><span class="preprocessor">#endif</span></div>
<div class="line"><a id="l00164" name="l00164"></a><span class="lineno">  164</span> </div>
<div class="line"><a id="l00165" name="l00165"></a><span class="lineno">  165</span><span class="comment">/* Header guard */</span></div>
<div class="line"><a id="l00166" name="l00166"></a><span class="lineno">  166</span><span class="preprocessor">#if !defined(NVTX_VERSION)</span></div>
<div class="line"><a id="l00167" name="l00167"></a><span class="lineno"><a class="line" href="nv_tools_ext_8h.html#a270c1573fb02bc9f15825438913a255c">  167</a></span><span class="preprocessor">#define NVTX_VERSION 3</span></div>
<div class="line"><a id="l00168" name="l00168"></a><span class="lineno">  168</span> </div>
<div class="line"><a id="l00169" name="l00169"></a><span class="lineno">  169</span><span class="comment">/* Platform-dependent defines:</span></div>
<div class="line"><a id="l00170" name="l00170"></a><span class="lineno">  170</span><span class="comment"> *</span></div>
<div class="line"><a id="l00171" name="l00171"></a><span class="lineno">  171</span><span class="comment"> * - NVTX_API - Calling conventions (only used on Windows, and only effects</span></div>
<div class="line"><a id="l00172" name="l00172"></a><span class="lineno">  172</span><span class="comment"> *   32-bit x86 builds, i.e. callee pops stack instead of caller)</span></div>
<div class="line"><a id="l00173" name="l00173"></a><span class="lineno">  173</span><span class="comment"> *</span></div>
<div class="line"><a id="l00174" name="l00174"></a><span class="lineno">  174</span><span class="comment"> * - NVTX_DYNAMIC_EXPORT - Make function an exported entry point from a</span></div>
<div class="line"><a id="l00175" name="l00175"></a><span class="lineno">  175</span><span class="comment"> *   dynamic library or shared object.</span></div>
<div class="line"><a id="l00176" name="l00176"></a><span class="lineno">  176</span><span class="comment"> *</span></div>
<div class="line"><a id="l00177" name="l00177"></a><span class="lineno">  177</span><span class="comment"> * - NVTX_EXPORT_UNMANGLED_FUNCTION_NAME - When used inside the body of a</span></div>
<div class="line"><a id="l00178" name="l00178"></a><span class="lineno">  178</span><span class="comment"> *   function declared with NVTX_DYNAMIC_EXPORT, ensures the symbol exported</span></div>
<div class="line"><a id="l00179" name="l00179"></a><span class="lineno">  179</span><span class="comment"> *   for the function is the exact string of the function&#39;s name as written</span></div>
<div class="line"><a id="l00180" name="l00180"></a><span class="lineno">  180</span><span class="comment"> *   in the code.  Name-mangling or name-decoration is disabled.  Note that</span></div>
<div class="line"><a id="l00181" name="l00181"></a><span class="lineno">  181</span><span class="comment"> *   on many platforms this is not necessary, since either the function name</span></div>
<div class="line"><a id="l00182" name="l00182"></a><span class="lineno">  182</span><span class="comment"> *   is already exported verbatim, or the dynamic loader also checks for</span></div>
<div class="line"><a id="l00183" name="l00183"></a><span class="lineno">  183</span><span class="comment"> *   functions with the mangling applied.  Forcing the exports to avoid any</span></div>
<div class="line"><a id="l00184" name="l00184"></a><span class="lineno">  184</span><span class="comment"> *   mangling simplifies usage across platforms and from other languages.</span></div>
<div class="line"><a id="l00185" name="l00185"></a><span class="lineno">  185</span><span class="comment"> */</span></div>
<div class="line"><a id="l00186" name="l00186"></a><span class="lineno">  186</span><span class="preprocessor">#if defined(_WIN32)</span></div>
<div class="line"><a id="l00187" name="l00187"></a><span class="lineno">  187</span> </div>
<div class="line"><a id="l00188" name="l00188"></a><span class="lineno">  188</span><span class="preprocessor">#define NVTX_API __stdcall</span></div>
<div class="line"><a id="l00189" name="l00189"></a><span class="lineno">  189</span> </div>
<div class="line"><a id="l00190" name="l00190"></a><span class="lineno">  190</span><span class="preprocessor">#if defined(_MSC_VER)</span></div>
<div class="line"><a id="l00191" name="l00191"></a><span class="lineno">  191</span><span class="preprocessor">#define NVTX_DYNAMIC_EXPORT __declspec(dllexport)</span></div>
<div class="line"><a id="l00192" name="l00192"></a><span class="lineno">  192</span><span class="preprocessor">#else</span></div>
<div class="line"><a id="l00193" name="l00193"></a><span class="lineno">  193</span><span class="preprocessor">#define NVTX_DYNAMIC_EXPORT __attribute__((visibility(&quot;default&quot;))) __declspec(dllexport)</span></div>
<div class="line"><a id="l00194" name="l00194"></a><span class="lineno">  194</span><span class="preprocessor">#endif</span></div>
<div class="line"><a id="l00195" name="l00195"></a><span class="lineno">  195</span> </div>
<div class="line"><a id="l00196" name="l00196"></a><span class="lineno">  196</span><span class="preprocessor">#if defined(_M_IX86) || defined(_M_ARM64EC)</span></div>
<div class="line"><a id="l00197" name="l00197"></a><span class="lineno">  197</span><span class="preprocessor">#define NVTX_EXPORT_UNMANGLED_FUNCTION_NAME _Pragma(&quot;comment(linker, \&quot;/EXPORT:\&quot; __FUNCTION__ \&quot;=\&quot; __FUNCDNAME__)&quot;)</span></div>
<div class="line"><a id="l00198" name="l00198"></a><span class="lineno">  198</span><span class="preprocessor">#else</span></div>
<div class="line"><a id="l00199" name="l00199"></a><span class="lineno">  199</span><span class="preprocessor">#define NVTX_EXPORT_UNMANGLED_FUNCTION_NAME</span></div>
<div class="line"><a id="l00200" name="l00200"></a><span class="lineno">  200</span><span class="preprocessor">#endif</span></div>
<div class="line"><a id="l00201" name="l00201"></a><span class="lineno">  201</span> </div>
<div class="line"><a id="l00202" name="l00202"></a><span class="lineno">  202</span><span class="preprocessor">#else </span><span class="comment">/* POSIX-like platform */</span><span class="preprocessor"></span></div>
<div class="line"><a id="l00203" name="l00203"></a><span class="lineno">  203</span> </div>
<div class="line"><a id="l00204" name="l00204"></a><span class="lineno">  204</span><span class="preprocessor">#define NVTX_API</span></div>
<div class="line"><a id="l00205" name="l00205"></a><span class="lineno">  205</span> </div>
<div class="line"><a id="l00206" name="l00206"></a><span class="lineno">  206</span><span class="preprocessor">#define NVTX_DYNAMIC_EXPORT __attribute__((visibility(&quot;default&quot;)))</span></div>
<div class="line"><a id="l00207" name="l00207"></a><span class="lineno">  207</span> </div>
<div class="line"><a id="l00208" name="l00208"></a><span class="lineno">  208</span><span class="preprocessor">#define NVTX_EXPORT_UNMANGLED_FUNCTION_NAME</span></div>
<div class="line"><a id="l00209" name="l00209"></a><span class="lineno">  209</span> </div>
<div class="line"><a id="l00210" name="l00210"></a><span class="lineno">  210</span><span class="preprocessor">#endif </span><span class="comment">/* Platform-dependent defines */</span><span class="preprocessor"></span></div>
<div class="line"><a id="l00211" name="l00211"></a><span class="lineno">  211</span> </div>
<div class="line"><a id="l00212" name="l00212"></a><span class="lineno">  212</span><span class="comment">/* Compiler-dependent defines:</span></div>
<div class="line"><a id="l00213" name="l00213"></a><span class="lineno">  213</span><span class="comment"> *</span></div>
<div class="line"><a id="l00214" name="l00214"></a><span class="lineno">  214</span><span class="comment"> * - NVTX_INLINE_STATIC - Ensure function has internal linkage, and suggest</span></div>
<div class="line"><a id="l00215" name="l00215"></a><span class="lineno">  215</span><span class="comment"> *   avoiding code-gen of the function.  Without this, function has external</span></div>
<div class="line"><a id="l00216" name="l00216"></a><span class="lineno">  216</span><span class="comment"> *   linkage with a strong symbol, so linker expects only one definition.</span></div>
<div class="line"><a id="l00217" name="l00217"></a><span class="lineno">  217</span><span class="comment"> */</span></div>
<div class="line"><a id="l00218" name="l00218"></a><span class="lineno">  218</span><span class="preprocessor">#if defined(_MSC_VER)</span></div>
<div class="line"><a id="l00219" name="l00219"></a><span class="lineno">  219</span> </div>
<div class="line"><a id="l00220" name="l00220"></a><span class="lineno">  220</span><span class="preprocessor">#define NVTX_INLINE_STATIC __inline static</span></div>
<div class="line"><a id="l00221" name="l00221"></a><span class="lineno">  221</span> </div>
<div class="line"><a id="l00222" name="l00222"></a><span class="lineno">  222</span><span class="preprocessor">#else </span><span class="comment">/* GCC-like compiler */</span><span class="preprocessor"></span></div>
<div class="line"><a id="l00223" name="l00223"></a><span class="lineno">  223</span> </div>
<div class="line"><a id="l00224" name="l00224"></a><span class="lineno">  224</span><span class="preprocessor">#if defined(__cplusplus) || (defined(__STDC_VERSION__) &amp;&amp; __STDC_VERSION__ &gt;= 199901L)</span></div>
<div class="line"><a id="l00225" name="l00225"></a><span class="lineno">  225</span><span class="preprocessor">#define NVTX_INLINE_STATIC inline static</span></div>
<div class="line"><a id="l00226" name="l00226"></a><span class="lineno">  226</span><span class="preprocessor">#else</span></div>
<div class="line"><a id="l00227" name="l00227"></a><span class="lineno">  227</span><span class="preprocessor">#define NVTX_INLINE_STATIC __inline__ static</span></div>
<div class="line"><a id="l00228" name="l00228"></a><span class="lineno">  228</span><span class="preprocessor">#endif</span></div>
<div class="line"><a id="l00229" name="l00229"></a><span class="lineno">  229</span> </div>
<div class="line"><a id="l00230" name="l00230"></a><span class="lineno">  230</span><span class="preprocessor">#endif </span><span class="comment">/* Compiler-dependent defines */</span><span class="preprocessor"></span></div>
<div class="line"><a id="l00231" name="l00231"></a><span class="lineno">  231</span> </div>
<div class="line"><a id="l00232" name="l00232"></a><span class="lineno">  232</span> </div>
<div class="line"><a id="l00233" name="l00233"></a><span class="lineno">  233</span><span class="comment">/* API linkage/export options:</span></div>
<div class="line"><a id="l00234" name="l00234"></a><span class="lineno">  234</span><span class="comment"> *</span></div>
<div class="line"><a id="l00235" name="l00235"></a><span class="lineno">  235</span><span class="comment"> * - By default, the NVTX API functions are declared as &quot;inline&quot;, with the</span></div>
<div class="line"><a id="l00236" name="l00236"></a><span class="lineno">  236</span><span class="comment"> *   implementations provided in the headers.  This allows multiple .c/.cpp</span></div>
<div class="line"><a id="l00237" name="l00237"></a><span class="lineno">  237</span><span class="comment"> *   files in the same project to include NVTX headers without duplicate-</span></div>
<div class="line"><a id="l00238" name="l00238"></a><span class="lineno">  238</span><span class="comment"> *   definition linker errors.  An optimizing compiler should inline these</span></div>
<div class="line"><a id="l00239" name="l00239"></a><span class="lineno">  239</span><span class="comment"> *   implementations, ensuring that the overhead of making an NVTX call is as</span></div>
<div class="line"><a id="l00240" name="l00240"></a><span class="lineno">  240</span><span class="comment"> *   low as possible, even without enabling link-time optimizations.</span></div>
<div class="line"><a id="l00241" name="l00241"></a><span class="lineno">  241</span><span class="comment"> *</span></div>
<div class="line"><a id="l00242" name="l00242"></a><span class="lineno">  242</span><span class="comment"> * - NVTX_NO_IMPL - Use when writing NVTX tools.  If this macro is defined,</span></div>
<div class="line"><a id="l00243" name="l00243"></a><span class="lineno">  243</span><span class="comment"> *   the NVTX headers will provide all the typedefs, macros, and declarations</span></div>
<div class="line"><a id="l00244" name="l00244"></a><span class="lineno">  244</span><span class="comment"> *   of API functions (not marked inline), but no function implementations.</span></div>
<div class="line"><a id="l00245" name="l00245"></a><span class="lineno">  245</span><span class="comment"> *</span></div>
<div class="line"><a id="l00246" name="l00246"></a><span class="lineno">  246</span><span class="comment"> * - NVTX_EXPORT_API - NVTX is normally used in C/C++ applications by simply</span></div>
<div class="line"><a id="l00247" name="l00247"></a><span class="lineno">  247</span><span class="comment"> *   including the headers.  There is no need to link with a static library,</span></div>
<div class="line"><a id="l00248" name="l00248"></a><span class="lineno">  248</span><span class="comment"> *   or to ship a dynamic library with the application (this was changed in</span></div>
<div class="line"><a id="l00249" name="l00249"></a><span class="lineno">  249</span><span class="comment"> *   NVTX v3).  For other languages, it&#39;s not convenient to use a header-only</span></div>
<div class="line"><a id="l00250" name="l00250"></a><span class="lineno">  250</span><span class="comment"> *   C library.  The best way to provide an idiomatic NVTX API for another</span></div>
<div class="line"><a id="l00251" name="l00251"></a><span class="lineno">  251</span><span class="comment"> *   language is a .c file that includes the NVTX headers and implements</span></div>
<div class="line"><a id="l00252" name="l00252"></a><span class="lineno">  252</span><span class="comment"> *   functions for that language using its native calling conventions and</span></div>
<div class="line"><a id="l00253" name="l00253"></a><span class="lineno">  253</span><span class="comment"> *   datatypes -- this method can allow static linking to avoid depending on</span></div>
<div class="line"><a id="l00254" name="l00254"></a><span class="lineno">  254</span><span class="comment"> *   a separate dynamic library.  Alternatively, other languages may support</span></div>
<div class="line"><a id="l00255" name="l00255"></a><span class="lineno">  255</span><span class="comment"> *   using C calling conventions to directly call C functions exported from a</span></div>
<div class="line"><a id="l00256" name="l00256"></a><span class="lineno">  256</span><span class="comment"> *   dynamic library.  To build such a library, write a .c file that defines</span></div>
<div class="line"><a id="l00257" name="l00257"></a><span class="lineno">  257</span><span class="comment"> *   NVTX_EXPORT_API and includes any/all of the NVTX headers.  Compile this</span></div>
<div class="line"><a id="l00258" name="l00258"></a><span class="lineno">  258</span><span class="comment"> *   file as a dynamic library, and the NVTX API functions from the included</span></div>
<div class="line"><a id="l00259" name="l00259"></a><span class="lineno">  259</span><span class="comment"> *   headers will be exported with no name-mangling or decoration.  Defining</span></div>
<div class="line"><a id="l00260" name="l00260"></a><span class="lineno">  260</span><span class="comment"> *   ABI-compatible NVTX struct and enum types in the other language is the</span></div>
<div class="line"><a id="l00261" name="l00261"></a><span class="lineno">  261</span><span class="comment"> *   responsibility of the user of this dynamic library.</span></div>
<div class="line"><a id="l00262" name="l00262"></a><span class="lineno">  262</span><span class="comment"> *</span></div>
<div class="line"><a id="l00263" name="l00263"></a><span class="lineno">  263</span><span class="comment"> * Whichever of the above modes is chosen, the following macros are defined</span></div>
<div class="line"><a id="l00264" name="l00264"></a><span class="lineno">  264</span><span class="comment"> * appropriately below to implement that mode.  These macros are only defined</span></div>
<div class="line"><a id="l00265" name="l00265"></a><span class="lineno">  265</span><span class="comment"> * if not already defined by the user, so they may be overridden by users to</span></div>
<div class="line"><a id="l00266" name="l00266"></a><span class="lineno">  266</span><span class="comment"> * handle advanced cases.</span></div>
<div class="line"><a id="l00267" name="l00267"></a><span class="lineno">  267</span><span class="comment"> *</span></div>
<div class="line"><a id="l00268" name="l00268"></a><span class="lineno">  268</span><span class="comment"> * - NVTX_DECLSPEC - Specify linkage for NVTX API functions.</span></div>
<div class="line"><a id="l00269" name="l00269"></a><span class="lineno">  269</span><span class="comment"> *</span></div>
<div class="line"><a id="l00270" name="l00270"></a><span class="lineno">  270</span><span class="comment"> * - NVTX_SET_NAME_MANGLING_OPTIONS - If necessary for the platform, will use</span></div>
<div class="line"><a id="l00271" name="l00271"></a><span class="lineno">  271</span><span class="comment"> *   platform-dependent syntax for ensuring function name is exported with no</span></div>
<div class="line"><a id="l00272" name="l00272"></a><span class="lineno">  272</span><span class="comment"> *   name-mangling or decoration.  Certain compiler and calling-convention</span></div>
<div class="line"><a id="l00273" name="l00273"></a><span class="lineno">  273</span><span class="comment"> *   combinations will add name-mangling or decorations when exporting NVTX</span></div>
<div class="line"><a id="l00274" name="l00274"></a><span class="lineno">  274</span><span class="comment"> *   function name symbols, which makes it much harder for other languages</span></div>
<div class="line"><a id="l00275" name="l00275"></a><span class="lineno">  275</span><span class="comment"> *   to access these functions.  This macro must be used inside a function&#39;s</span></div>
<div class="line"><a id="l00276" name="l00276"></a><span class="lineno">  276</span><span class="comment"> *   body because it uses built-in macros to get the current function&#39;s name.</span></div>
<div class="line"><a id="l00277" name="l00277"></a><span class="lineno">  277</span><span class="comment"> */</span></div>
<div class="line"><a id="l00278" name="l00278"></a><span class="lineno">  278</span><span class="preprocessor">#if defined(NVTX_NO_IMPL)</span></div>
<div class="line"><a id="l00279" name="l00279"></a><span class="lineno">  279</span> </div>
<div class="line"><a id="l00280" name="l00280"></a><span class="lineno">  280</span><span class="comment">/* When omitting implementation, avoid declaring functions inline</span></div>
<div class="line"><a id="l00281" name="l00281"></a><span class="lineno">  281</span><span class="comment"> * without definitions, since this causes compiler warnings. */</span></div>
<div class="line"><a id="l00282" name="l00282"></a><span class="lineno">  282</span><span class="preprocessor">#if !defined(NVTX_DECLSPEC)</span></div>
<div class="line"><a id="l00283" name="l00283"></a><span class="lineno">  283</span><span class="preprocessor">#define NVTX_DECLSPEC</span></div>
<div class="line"><a id="l00284" name="l00284"></a><span class="lineno">  284</span><span class="preprocessor">#endif</span></div>
<div class="line"><a id="l00285" name="l00285"></a><span class="lineno">  285</span><span class="preprocessor">#if !defined(NVTX_SET_NAME_MANGLING_OPTIONS)</span></div>
<div class="line"><a id="l00286" name="l00286"></a><span class="lineno">  286</span><span class="preprocessor">#define NVTX_SET_NAME_MANGLING_OPTIONS</span></div>
<div class="line"><a id="l00287" name="l00287"></a><span class="lineno">  287</span><span class="preprocessor">#endif</span></div>
<div class="line"><a id="l00288" name="l00288"></a><span class="lineno">  288</span> </div>
<div class="line"><a id="l00289" name="l00289"></a><span class="lineno">  289</span><span class="preprocessor">#elif defined(NVTX_EXPORT_API)</span></div>
<div class="line"><a id="l00290" name="l00290"></a><span class="lineno">  290</span> </div>
<div class="line"><a id="l00291" name="l00291"></a><span class="lineno">  291</span><span class="comment">/* Add platform-dependent declaration syntax to ensure NVTX API functions are</span></div>
<div class="line"><a id="l00292" name="l00292"></a><span class="lineno">  292</span><span class="comment"> * exported when compiling as a dynamic library/shared object, and ensure the</span></div>
<div class="line"><a id="l00293" name="l00293"></a><span class="lineno">  293</span><span class="comment"> * exported names are not mangled/decorated. */</span></div>
<div class="line"><a id="l00294" name="l00294"></a><span class="lineno">  294</span><span class="preprocessor">#if !defined(NVTX_DECLSPEC)</span></div>
<div class="line"><a id="l00295" name="l00295"></a><span class="lineno">  295</span><span class="preprocessor">#define NVTX_DECLSPEC NVTX_DYNAMIC_EXPORT</span></div>
<div class="line"><a id="l00296" name="l00296"></a><span class="lineno">  296</span><span class="preprocessor">#endif</span></div>
<div class="line"><a id="l00297" name="l00297"></a><span class="lineno">  297</span><span class="preprocessor">#if !defined(NVTX_SET_NAME_MANGLING_OPTIONS)</span></div>
<div class="line"><a id="l00298" name="l00298"></a><span class="lineno">  298</span><span class="preprocessor">#define NVTX_SET_NAME_MANGLING_OPTIONS NVTX_EXPORT_UNMANGLED_FUNCTION_NAME</span></div>
<div class="line"><a id="l00299" name="l00299"></a><span class="lineno">  299</span><span class="preprocessor">#endif</span></div>
<div class="line"><a id="l00300" name="l00300"></a><span class="lineno">  300</span> </div>
<div class="line"><a id="l00301" name="l00301"></a><span class="lineno">  301</span><span class="preprocessor">#else </span><span class="comment">/* Normal NVTX usage */</span><span class="preprocessor"></span></div>
<div class="line"><a id="l00302" name="l00302"></a><span class="lineno">  302</span> </div>
<div class="line"><a id="l00303" name="l00303"></a><span class="lineno">  303</span><span class="comment">/* Functions definitions are provided, and functions are declared inline to</span></div>
<div class="line"><a id="l00304" name="l00304"></a><span class="lineno">  304</span><span class="comment"> * avoid duplicate-definition linker errors when using multiple source files. */</span></div>
<div class="line"><a id="l00305" name="l00305"></a><span class="lineno">  305</span><span class="preprocessor">#if !defined(NVTX_DECLSPEC)</span></div>
<div class="line"><a id="l00306" name="l00306"></a><span class="lineno">  306</span><span class="preprocessor">#define NVTX_DECLSPEC NVTX_INLINE_STATIC</span></div>
<div class="line"><a id="l00307" name="l00307"></a><span class="lineno">  307</span><span class="preprocessor">#endif</span></div>
<div class="line"><a id="l00308" name="l00308"></a><span class="lineno">  308</span><span class="preprocessor">#if !defined(NVTX_SET_NAME_MANGLING_OPTIONS)</span></div>
<div class="line"><a id="l00309" name="l00309"></a><span class="lineno">  309</span><span class="preprocessor">#define NVTX_SET_NAME_MANGLING_OPTIONS</span></div>
<div class="line"><a id="l00310" name="l00310"></a><span class="lineno">  310</span><span class="preprocessor">#endif</span></div>
<div class="line"><a id="l00311" name="l00311"></a><span class="lineno">  311</span> </div>
<div class="line"><a id="l00312" name="l00312"></a><span class="lineno">  312</span><span class="preprocessor">#endif</span></div>
<div class="line"><a id="l00313" name="l00313"></a><span class="lineno">  313</span> </div>
<div class="line"><a id="l00314" name="l00314"></a><span class="lineno">  314</span><span class="comment">/* Platform-dependent helpers for defining global variables in header files.</span></div>
<div class="line"><a id="l00315" name="l00315"></a><span class="lineno">  315</span><span class="comment"> * Ensures the linker uses only one instance when multiple source files include</span></div>
<div class="line"><a id="l00316" name="l00316"></a><span class="lineno">  316</span><span class="comment"> * the headers, avoiding duplicate-definition linker errors. */</span></div>
<div class="line"><a id="l00317" name="l00317"></a><span class="lineno">  317</span><span class="preprocessor">#include &quot;nvtxDetail/nvtxLinkOnce.h&quot;</span></div>
<div class="line"><a id="l00318" name="l00318"></a><span class="lineno">  318</span> </div>
<div class="line"><a id="l00319" name="l00319"></a><span class="lineno">  319</span><span class="comment">/* Macros for applying major-version-specific suffix to NVTX global symbols, so</span></div>
<div class="line"><a id="l00320" name="l00320"></a><span class="lineno">  320</span><span class="comment"> * usage of different versions in different source files is supported without</span></div>
<div class="line"><a id="l00321" name="l00321"></a><span class="lineno">  321</span><span class="comment"> * violating the one-definition rule. */</span></div>
<div class="line"><a id="l00322" name="l00322"></a><span class="lineno">  322</span><span class="preprocessor">#define NVTX_VERSIONED_IDENTIFIER_L3(NAME, VERSION) NAME##_v##VERSION</span></div>
<div class="line"><a id="l00323" name="l00323"></a><span class="lineno">  323</span><span class="preprocessor">#define NVTX_VERSIONED_IDENTIFIER_L2(NAME, VERSION) NVTX_VERSIONED_IDENTIFIER_L3(NAME, VERSION)</span></div>
<div class="line"><a id="l00324" name="l00324"></a><span class="lineno">  324</span><span class="preprocessor">#define NVTX_VERSIONED_IDENTIFIER(NAME) NVTX_VERSIONED_IDENTIFIER_L2(NAME, NVTX_VERSION)</span></div>
<div class="line"><a id="l00325" name="l00325"></a><span class="lineno">  325</span> </div>
<div class="line"><a id="l00345" name="l00345"></a><span class="lineno">  345</span><span class="preprocessor">#ifndef NVTX_STDINT_TYPES_ALREADY_DEFINED</span></div>
<div class="line"><a id="l00346" name="l00346"></a><span class="lineno">  346</span><span class="preprocessor">#include &lt;stdint.h&gt;</span></div>
<div class="line"><a id="l00347" name="l00347"></a><span class="lineno">  347</span><span class="preprocessor">#endif</span></div>
<div class="line"><a id="l00348" name="l00348"></a><span class="lineno">  348</span> </div>
<div class="line"><a id="l00349" name="l00349"></a><span class="lineno">  349</span><span class="preprocessor">#include &lt;stddef.h&gt;</span></div>
<div class="line"><a id="l00350" name="l00350"></a><span class="lineno">  350</span> </div>
<div class="line"><a id="l00351" name="l00351"></a><span class="lineno">  351</span><span class="preprocessor">#ifdef __cplusplus</span></div>
<div class="line"><a id="l00352" name="l00352"></a><span class="lineno">  352</span><span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div>
<div class="line"><a id="l00353" name="l00353"></a><span class="lineno">  353</span><span class="preprocessor">#endif </span><span class="comment">/* __cplusplus */</span><span class="preprocessor"></span></div>
<div class="line"><a id="l00354" name="l00354"></a><span class="lineno">  354</span> </div>
<div class="line"><a id="l00358" name="l00358"></a><span class="lineno"><a class="line" href="nv_tools_ext_8h.html#a362baf81557ad280b814b7400dd6f742">  358</a></span><span class="preprocessor">#define NVTX_SUCCESS 0</span></div>
<div class="line"><a id="l00359" name="l00359"></a><span class="lineno">  359</span><span class="preprocessor">#define NVTX_FAIL 1</span></div>
<div class="line"><a id="l00360" name="l00360"></a><span class="lineno">  360</span><span class="preprocessor">#define NVTX_ERR_INIT_LOAD_PROPERTY 2</span></div>
<div class="line"><a id="l00361" name="l00361"></a><span class="lineno">  361</span><span class="preprocessor">#define NVTX_ERR_INIT_ACCESS_LIBRARY 3</span></div>
<div class="line"><a id="l00362" name="l00362"></a><span class="lineno">  362</span><span class="preprocessor">#define NVTX_ERR_INIT_LOAD_LIBRARY 4</span></div>
<div class="line"><a id="l00363" name="l00363"></a><span class="lineno">  363</span><span class="preprocessor">#define NVTX_ERR_INIT_MISSING_LIBRARY_ENTRY_POINT 5</span></div>
<div class="line"><a id="l00364" name="l00364"></a><span class="lineno">  364</span><span class="preprocessor">#define NVTX_ERR_INIT_FAILED_LIBRARY_ENTRY_POINT 6</span></div>
<div class="line"><a id="l00365" name="l00365"></a><span class="lineno">  365</span><span class="preprocessor">#define NVTX_ERR_NO_INJECTION_LIBRARY_AVAILABLE 7</span></div>
<div class="line"><a id="l00366" name="l00366"></a><span class="lineno">  366</span> </div>
<div class="line"><a id="l00370" name="l00370"></a><span class="lineno"><a class="line" href="nv_tools_ext_8h.html#a5d1913ca9009ed5aad3208c3fb7a5a0e">  370</a></span><span class="preprocessor">#define NVTX_EVENT_ATTRIB_STRUCT_SIZE ( (uint16_t)( sizeof(nvtxEventAttributes_t) ) )</span></div>
<div class="line"><a id="l00371" name="l00371"></a><span class="lineno">  371</span> </div>
<div class="line"><a id="l00372" name="l00372"></a><span class="lineno">  372</span><span class="preprocessor">#define NVTX_NO_PUSH_POP_TRACKING ((int)-2)</span></div>
<div class="line"><a id="l00373" name="l00373"></a><span class="lineno">  373</span> </div>
<div class="line"><a id="l00374" name="l00374"></a><span class="lineno">  374</span><span class="keyword">typedef</span> uint64_t nvtxRangeId_t;</div>
<div class="line"><a id="l00375" name="l00375"></a><span class="lineno">  375</span> </div>
<div class="line"><a id="l00376" name="l00376"></a><span class="lineno">  376</span><span class="comment">/* Forward declaration of opaque domain registration structure */</span></div>
<div class="line"><a id="l00377" name="l00377"></a><span class="lineno">  377</span><span class="keyword">struct </span>nvtxDomainRegistration_st;</div>
<div class="line"><a id="l00378" name="l00378"></a><span class="lineno">  378</span><span class="keyword">typedef</span> <span class="keyword">struct </span>nvtxDomainRegistration_st nvtxDomainRegistration;</div>
<div class="line"><a id="l00379" name="l00379"></a><span class="lineno">  379</span> </div>
<div class="line"><a id="l00380" name="l00380"></a><span class="lineno">  380</span><span class="comment">/* \brief Domain Handle Structure.</span></div>
<div class="line"><a id="l00381" name="l00381"></a><span class="lineno">  381</span><span class="comment">* \anchor DOMAIN_HANDLE_STRUCTURE</span></div>
<div class="line"><a id="l00382" name="l00382"></a><span class="lineno">  382</span><span class="comment">*</span></div>
<div class="line"><a id="l00383" name="l00383"></a><span class="lineno">  383</span><span class="comment">* This structure is opaque to the user and is used as a handle to reference</span></div>
<div class="line"><a id="l00384" name="l00384"></a><span class="lineno">  384</span><span class="comment">* a domain.  This type is returned from tools when using the NVTX API to</span></div>
<div class="line"><a id="l00385" name="l00385"></a><span class="lineno">  385</span><span class="comment">* create a domain.</span></div>
<div class="line"><a id="l00386" name="l00386"></a><span class="lineno">  386</span><span class="comment">*</span></div>
<div class="line"><a id="l00387" name="l00387"></a><span class="lineno">  387</span><span class="comment">*/</span></div>
<div class="line"><a id="l00388" name="l00388"></a><span class="lineno">  388</span><span class="keyword">typedef</span> nvtxDomainRegistration* nvtxDomainHandle_t;</div>
<div class="line"><a id="l00389" name="l00389"></a><span class="lineno">  389</span> </div>
<div class="line"><a id="l00390" name="l00390"></a><span class="lineno">  390</span><span class="comment">/* Forward declaration of opaque string registration structure */</span></div>
<div class="line"><a id="l00391" name="l00391"></a><span class="lineno">  391</span><span class="keyword">struct </span>nvtxStringRegistration_st;</div>
<div class="line"><a id="l00392" name="l00392"></a><span class="lineno">  392</span><span class="keyword">typedef</span> <span class="keyword">struct </span>nvtxStringRegistration_st nvtxStringRegistration;</div>
<div class="line"><a id="l00393" name="l00393"></a><span class="lineno">  393</span> </div>
<div class="line"><a id="l00394" name="l00394"></a><span class="lineno">  394</span><span class="comment">/* \brief Registered String Handle Structure.</span></div>
<div class="line"><a id="l00395" name="l00395"></a><span class="lineno">  395</span><span class="comment">* \anchor REGISTERED_STRING_HANDLE_STRUCTURE</span></div>
<div class="line"><a id="l00396" name="l00396"></a><span class="lineno">  396</span><span class="comment">*</span></div>
<div class="line"><a id="l00397" name="l00397"></a><span class="lineno">  397</span><span class="comment">* This structure is opaque to the user and is used as a handle to reference</span></div>
<div class="line"><a id="l00398" name="l00398"></a><span class="lineno">  398</span><span class="comment">* a registered string.  This type is returned from tools when using the NVTX</span></div>
<div class="line"><a id="l00399" name="l00399"></a><span class="lineno">  399</span><span class="comment">* API to create a registered string.</span></div>
<div class="line"><a id="l00400" name="l00400"></a><span class="lineno">  400</span><span class="comment">*</span></div>
<div class="line"><a id="l00401" name="l00401"></a><span class="lineno">  401</span><span class="comment">*/</span></div>
<div class="line"><a id="l00402" name="l00402"></a><span class="lineno">  402</span><span class="keyword">typedef</span> nvtxStringRegistration* nvtxStringHandle_t;</div>
<div class="line"><a id="l00403" name="l00403"></a><span class="lineno">  403</span> </div>
<div class="line"><a id="l00404" name="l00404"></a><span class="lineno">  404</span><span class="comment">/* ========================================================================= */</span></div>
<div class="foldopen" id="foldopen00412" data-start="{" data-end="};">
<div class="line"><a id="l00412" name="l00412"></a><span class="lineno"><a class="line" href="group___g_e_n_e_r_a_l.html#gad03fafe52eed68d119c1c4ea6e92a521">  412</a></span><span class="keyword">typedef</span> <span class="keyword">enum</span> <a class="code hl_enumeration" href="group___g_e_n_e_r_a_l.html#gad03fafe52eed68d119c1c4ea6e92a521">nvtxColorType_t</a></div>
<div class="line"><a id="l00413" name="l00413"></a><span class="lineno">  413</span>{</div>
<div class="line"><a id="l00414" name="l00414"></a><span class="lineno"><a class="line" href="group___g_e_n_e_r_a_l.html#ggad03fafe52eed68d119c1c4ea6e92a521a7925dcdd1d707cb5db39f830eba5bf9e">  414</a></span>    <a class="code hl_enumvalue" href="group___g_e_n_e_r_a_l.html#ggad03fafe52eed68d119c1c4ea6e92a521a7925dcdd1d707cb5db39f830eba5bf9e">NVTX_COLOR_UNKNOWN</a>  = 0,                 </div>
<div class="line"><a id="l00415" name="l00415"></a><span class="lineno">  415</span>    <a class="code hl_enumvalue" href="group___g_e_n_e_r_a_l.html#ggad03fafe52eed68d119c1c4ea6e92a521a63a59d87ec996a2eb620e26e37bd705e">NVTX_COLOR_ARGB</a>     = 1                  </div>
<div class="line"><a id="l00416" name="l00416"></a><span class="lineno"><a class="line" href="group___g_e_n_e_r_a_l.html#ggad03fafe52eed68d119c1c4ea6e92a521a63a59d87ec996a2eb620e26e37bd705e">  416</a></span>} <a class="code hl_enumeration" href="group___g_e_n_e_r_a_l.html#gad03fafe52eed68d119c1c4ea6e92a521">nvtxColorType_t</a>;</div>
</div>
<div class="line"><a id="l00417" name="l00417"></a><span class="lineno">  417</span> </div>
<div class="foldopen" id="foldopen00421" data-start="{" data-end="};">
<div class="line"><a id="l00421" name="l00421"></a><span class="lineno"><a class="line" href="group___g_e_n_e_r_a_l.html#gaf74d5ab5269ee3c1de7aa0059ca31c46">  421</a></span><span class="keyword">typedef</span> <span class="keyword">enum</span> <a class="code hl_enumeration" href="group___g_e_n_e_r_a_l.html#gaf74d5ab5269ee3c1de7aa0059ca31c46">nvtxMessageType_t</a></div>
<div class="line"><a id="l00422" name="l00422"></a><span class="lineno">  422</span>{</div>
<div class="line"><a id="l00423" name="l00423"></a><span class="lineno"><a class="line" href="group___g_e_n_e_r_a_l.html#ggaf74d5ab5269ee3c1de7aa0059ca31c46ac0d2f55b27e96f691a06efc5c7c4c134">  423</a></span>    <a class="code hl_enumvalue" href="group___g_e_n_e_r_a_l.html#ggaf74d5ab5269ee3c1de7aa0059ca31c46ac0d2f55b27e96f691a06efc5c7c4c134">NVTX_MESSAGE_UNKNOWN</a>          = 0,    </div>
<div class="line"><a id="l00424" name="l00424"></a><span class="lineno"><a class="line" href="group___g_e_n_e_r_a_l.html#ggaf74d5ab5269ee3c1de7aa0059ca31c46aad30a1fb6651b7f2c36d8d19ade74576">  424</a></span>    <a class="code hl_enumvalue" href="group___g_e_n_e_r_a_l.html#ggaf74d5ab5269ee3c1de7aa0059ca31c46aad30a1fb6651b7f2c36d8d19ade74576">NVTX_MESSAGE_TYPE_ASCII</a>       = 1,    </div>
<div class="line"><a id="l00425" name="l00425"></a><span class="lineno"><a class="line" href="group___g_e_n_e_r_a_l.html#ggaf74d5ab5269ee3c1de7aa0059ca31c46aac3516268f6c4b3f188b551ac5e1688b">  425</a></span>    <a class="code hl_enumvalue" href="group___g_e_n_e_r_a_l.html#ggaf74d5ab5269ee3c1de7aa0059ca31c46aac3516268f6c4b3f188b551ac5e1688b">NVTX_MESSAGE_TYPE_UNICODE</a>     = 2,     </div>
<div class="line"><a id="l00426" name="l00426"></a><span class="lineno">  426</span>    <span class="comment">/* NVTX_VERSION_2 */</span></div>
<div class="line"><a id="l00427" name="l00427"></a><span class="lineno">  427</span>    <a class="code hl_enumvalue" href="group___g_e_n_e_r_a_l.html#ggaf74d5ab5269ee3c1de7aa0059ca31c46a4dfd8514ece4f6d1b0aa350b882950ea">NVTX_MESSAGE_TYPE_REGISTERED</a>  = 3,    </div>
<div class="line"><a id="l00430" name="l00430"></a><span class="lineno">  430</span>} <a class="code hl_enumeration" href="group___g_e_n_e_r_a_l.html#gaf74d5ab5269ee3c1de7aa0059ca31c46">nvtxMessageType_t</a>;</div>
</div>
<div class="line"><a id="l00431" name="l00431"></a><span class="lineno">  431</span> </div>
<div class="foldopen" id="foldopen00432" data-start="{" data-end="};">
<div class="line"><a id="l00432" name="l00432"></a><span class="lineno"><a class="line" href="unionnvtx_message_value__t.html">  432</a></span><span class="keyword">typedef</span> <span class="keyword">union </span><a class="code hl_union" href="unionnvtx_message_value__t.html">nvtxMessageValue_t</a></div>
<div class="line"><a id="l00433" name="l00433"></a><span class="lineno">  433</span>{</div>
<div class="line"><a id="l00434" name="l00434"></a><span class="lineno">  434</span>    <span class="keyword">const</span> <span class="keywordtype">char</span>* ascii;</div>
<div class="line"><a id="l00435" name="l00435"></a><span class="lineno">  435</span>    <span class="keyword">const</span> <span class="keywordtype">wchar_t</span>* unicode;</div>
<div class="line"><a id="l00436" name="l00436"></a><span class="lineno">  436</span>    <span class="comment">/* NVTX_VERSION_2 */</span></div>
<div class="line"><a id="l00437" name="l00437"></a><span class="lineno">  437</span>    nvtxStringHandle_t registered;</div>
<div class="line"><a id="l00438" name="l00438"></a><span class="lineno">  438</span>} <a class="code hl_union" href="unionnvtx_message_value__t.html">nvtxMessageValue_t</a>;</div>
</div>
<div class="line"><a id="l00439" name="l00439"></a><span class="lineno">  439</span> </div>
<div class="line"><a id="l00440" name="l00440"></a><span class="lineno">  440</span> </div>
 <span class="comment">/*END defgroup*/</span><div class="line"><a id="l00442" name="l00442"></a><span class="lineno">  442</span><span class="comment">/* ------------------------------------------------------------------------- */</span></div>
<div class="line"><a id="l00464" name="l00464"></a><span class="lineno"><a class="line" href="nv_tools_ext_8h.html#ab89b5c89bfdf240e0ea83b6ab2f89fdf">  464</a></span>NVTX_DECLSPEC <span class="keywordtype">void</span> NVTX_API <a class="code hl_function" href="nv_tools_ext_8h.html#ab89b5c89bfdf240e0ea83b6ab2f89fdf">nvtxInitialize</a>(<span class="keyword">const</span> <span class="keywordtype">void</span>* reserved);</div>
 <span class="comment">/*END defgroup*/</span><div class="line"><a id="l00469" name="l00469"></a><span class="lineno">  469</span> </div>
<div class="line"><a id="l00470" name="l00470"></a><span class="lineno">  470</span><span class="comment">/* ========================================================================= */</span></div>
<div class="foldopen" id="foldopen00478" data-start="{" data-end="};">
<div class="line"><a id="l00478" name="l00478"></a><span class="lineno"><a class="line" href="group___e_v_e_n_t___a_t_t_r_i_b_u_t_e_s.html#ga2cd77099163a1997f5adff5457e6e5d7">  478</a></span><span class="keyword">typedef</span> <span class="keyword">enum</span> <a class="code hl_enumeration" href="group___e_v_e_n_t___a_t_t_r_i_b_u_t_e_s.html#ga2cd77099163a1997f5adff5457e6e5d7">nvtxPayloadType_t</a></div>
<div class="line"><a id="l00479" name="l00479"></a><span class="lineno">  479</span>{</div>
<div class="line"><a id="l00480" name="l00480"></a><span class="lineno"><a class="line" href="group___e_v_e_n_t___a_t_t_r_i_b_u_t_e_s.html#gga2cd77099163a1997f5adff5457e6e5d7a79a07a8c0ddee984d2ad47c4dd77fe81">  480</a></span>    <a class="code hl_enumvalue" href="group___e_v_e_n_t___a_t_t_r_i_b_u_t_e_s.html#gga2cd77099163a1997f5adff5457e6e5d7a79a07a8c0ddee984d2ad47c4dd77fe81">NVTX_PAYLOAD_UNKNOWN</a> = 0,   </div>
<div class="line"><a id="l00481" name="l00481"></a><span class="lineno"><a class="line" href="group___e_v_e_n_t___a_t_t_r_i_b_u_t_e_s.html#gga2cd77099163a1997f5adff5457e6e5d7ac97c31e807ae3a2c64ea7e07cd7cdb9b">  481</a></span>    <a class="code hl_enumvalue" href="group___e_v_e_n_t___a_t_t_r_i_b_u_t_e_s.html#gga2cd77099163a1997f5adff5457e6e5d7ac97c31e807ae3a2c64ea7e07cd7cdb9b">NVTX_PAYLOAD_TYPE_UNSIGNED_INT64</a> = 1,   </div>
<div class="line"><a id="l00482" name="l00482"></a><span class="lineno"><a class="line" href="group___e_v_e_n_t___a_t_t_r_i_b_u_t_e_s.html#gga2cd77099163a1997f5adff5457e6e5d7ac48f6e938e3bdeaf7fdf65a1fb61f532">  482</a></span>    <a class="code hl_enumvalue" href="group___e_v_e_n_t___a_t_t_r_i_b_u_t_e_s.html#gga2cd77099163a1997f5adff5457e6e5d7ac48f6e938e3bdeaf7fdf65a1fb61f532">NVTX_PAYLOAD_TYPE_INT64</a> = 2,   </div>
<div class="line"><a id="l00483" name="l00483"></a><span class="lineno"><a class="line" href="group___e_v_e_n_t___a_t_t_r_i_b_u_t_e_s.html#gga2cd77099163a1997f5adff5457e6e5d7a77fdb6810a8a4a55bdce8775977993b4">  483</a></span>    <a class="code hl_enumvalue" href="group___e_v_e_n_t___a_t_t_r_i_b_u_t_e_s.html#gga2cd77099163a1997f5adff5457e6e5d7a77fdb6810a8a4a55bdce8775977993b4">NVTX_PAYLOAD_TYPE_DOUBLE</a> = 3,   </div>
<div class="line"><a id="l00484" name="l00484"></a><span class="lineno">  484</span>    <span class="comment">/* NVTX_VERSION_2 */</span></div>
<div class="line"><a id="l00485" name="l00485"></a><span class="lineno"><a class="line" href="group___e_v_e_n_t___a_t_t_r_i_b_u_t_e_s.html#gga2cd77099163a1997f5adff5457e6e5d7aac1bc824559448716960c00e4b4a0b70">  485</a></span>    <a class="code hl_enumvalue" href="group___e_v_e_n_t___a_t_t_r_i_b_u_t_e_s.html#gga2cd77099163a1997f5adff5457e6e5d7aac1bc824559448716960c00e4b4a0b70">NVTX_PAYLOAD_TYPE_UNSIGNED_INT32</a> = 4,   </div>
<div class="line"><a id="l00486" name="l00486"></a><span class="lineno"><a class="line" href="group___e_v_e_n_t___a_t_t_r_i_b_u_t_e_s.html#gga2cd77099163a1997f5adff5457e6e5d7a35672e4d7c924aa3d7ff9a61d4874e88">  486</a></span>    <a class="code hl_enumvalue" href="group___e_v_e_n_t___a_t_t_r_i_b_u_t_e_s.html#gga2cd77099163a1997f5adff5457e6e5d7a35672e4d7c924aa3d7ff9a61d4874e88">NVTX_PAYLOAD_TYPE_INT32</a> = 5,   </div>
<div class="line"><a id="l00487" name="l00487"></a><span class="lineno">  487</span>    <a class="code hl_enumvalue" href="group___e_v_e_n_t___a_t_t_r_i_b_u_t_e_s.html#gga2cd77099163a1997f5adff5457e6e5d7ac19a6bd5c48c97f46a1474ed64509fe8">NVTX_PAYLOAD_TYPE_FLOAT</a> = 6    </div>
<div class="line"><a id="l00488" name="l00488"></a><span class="lineno"><a class="line" href="group___e_v_e_n_t___a_t_t_r_i_b_u_t_e_s.html#gga2cd77099163a1997f5adff5457e6e5d7ac19a6bd5c48c97f46a1474ed64509fe8">  488</a></span>} <a class="code hl_enumeration" href="group___e_v_e_n_t___a_t_t_r_i_b_u_t_e_s.html#ga2cd77099163a1997f5adff5457e6e5d7">nvtxPayloadType_t</a>;</div>
</div>
<div class="line"><a id="l00489" name="l00489"></a><span class="lineno">  489</span> </div>
<div class="foldopen" id="foldopen00567" data-start="{" data-end="};">
<div class="line"><a id="l00567" name="l00567"></a><span class="lineno"><a class="line" href="structnvtx_event_attributes__v2.html">  567</a></span><span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code hl_struct" href="structnvtx_event_attributes__v2.html">nvtxEventAttributes_v2</a></div>
<div class="line"><a id="l00568" name="l00568"></a><span class="lineno">  568</span>{</div>
<div class="line"><a id="l00576" name="l00576"></a><span class="lineno"><a class="line" href="structnvtx_event_attributes__v2.html#a307b3b9949304b301e1b6d1346c71530">  576</a></span>    uint16_t <a class="code hl_variable" href="structnvtx_event_attributes__v2.html#a307b3b9949304b301e1b6d1346c71530">version</a>;</div>
<div class="line"><a id="l00577" name="l00577"></a><span class="lineno">  577</span> </div>
<div class="line"><a id="l00584" name="l00584"></a><span class="lineno"><a class="line" href="structnvtx_event_attributes__v2.html#a90b5726d65e2665b558668eada26ffb9">  584</a></span>    uint16_t <a class="code hl_variable" href="structnvtx_event_attributes__v2.html#a90b5726d65e2665b558668eada26ffb9">size</a>;</div>
<div class="line"><a id="l00585" name="l00585"></a><span class="lineno">  585</span> </div>
<div class="line"><a id="l00597" name="l00597"></a><span class="lineno"><a class="line" href="structnvtx_event_attributes__v2.html#afb670b7abeb2d588c7157c08248e3665">  597</a></span>    uint32_t <a class="code hl_variable" href="structnvtx_event_attributes__v2.html#afb670b7abeb2d588c7157c08248e3665">category</a>;</div>
<div class="line"><a id="l00598" name="l00598"></a><span class="lineno">  598</span> </div>
<div class="line"><a id="l00606" name="l00606"></a><span class="lineno"><a class="line" href="structnvtx_event_attributes__v2.html#a67e51604f4f074d3a896a2475b36a8f0">  606</a></span>    int32_t <a class="code hl_variable" href="structnvtx_event_attributes__v2.html#a67e51604f4f074d3a896a2475b36a8f0">colorType</a>;              <span class="comment">/* nvtxColorType_t */</span></div>
<div class="line"><a id="l00607" name="l00607"></a><span class="lineno">  607</span> </div>
<div class="line"><a id="l00612" name="l00612"></a><span class="lineno"><a class="line" href="structnvtx_event_attributes__v2.html#aeddc617cf06c8e83dbfaf3968ad04a5d">  612</a></span>    uint32_t <a class="code hl_variable" href="structnvtx_event_attributes__v2.html#aeddc617cf06c8e83dbfaf3968ad04a5d">color</a>;</div>
<div class="line"><a id="l00613" name="l00613"></a><span class="lineno">  613</span> </div>
<div class="line"><a id="l00622" name="l00622"></a><span class="lineno"><a class="line" href="structnvtx_event_attributes__v2.html#ab92717e2aed2888cd99ecdf6c4681e45">  622</a></span>    int32_t <a class="code hl_variable" href="structnvtx_event_attributes__v2.html#ab92717e2aed2888cd99ecdf6c4681e45">payloadType</a>;            <span class="comment">/* nvtxPayloadType_t */</span></div>
<div class="line"><a id="l00623" name="l00623"></a><span class="lineno">  623</span> </div>
<div class="line"><a id="l00624" name="l00624"></a><span class="lineno">  624</span>    int32_t reserved0;</div>
<div class="line"><a id="l00625" name="l00625"></a><span class="lineno">  625</span> </div>
<div class="foldopen" id="foldopen00632" data-start="{" data-end="};">
<div class="line"><a id="l00632" name="l00632"></a><span class="lineno"><a class="line" href="unionnvtx_event_attributes__v2_1_1payload__t.html">  632</a></span>    <span class="keyword">union </span><a class="code hl_union" href="unionnvtx_event_attributes__v2_1_1payload__t.html">payload_t</a></div>
<div class="line"><a id="l00633" name="l00633"></a><span class="lineno">  633</span>    {</div>
<div class="line"><a id="l00634" name="l00634"></a><span class="lineno">  634</span>        uint64_t ullValue;</div>
<div class="line"><a id="l00635" name="l00635"></a><span class="lineno">  635</span>        int64_t llValue;</div>
<div class="line"><a id="l00636" name="l00636"></a><span class="lineno">  636</span>        <span class="keywordtype">double</span> dValue;</div>
<div class="line"><a id="l00637" name="l00637"></a><span class="lineno">  637</span>        <span class="comment">/* NVTX_VERSION_2 */</span></div>
<div class="line"><a id="l00638" name="l00638"></a><span class="lineno">  638</span>        uint32_t uiValue;</div>
<div class="line"><a id="l00639" name="l00639"></a><span class="lineno">  639</span>        int32_t iValue;</div>
<div class="line"><a id="l00640" name="l00640"></a><span class="lineno">  640</span>        <span class="keywordtype">float</span> fValue;</div>
<div class="line"><a id="l00641" name="l00641"></a><span class="lineno">  641</span>    } payload;</div>
</div>
<div class="line"><a id="l00642" name="l00642"></a><span class="lineno">  642</span> </div>
<div class="line"><a id="l00650" name="l00650"></a><span class="lineno"><a class="line" href="structnvtx_event_attributes__v2.html#aea6394028b2357cc25b41af32f9a7c8b">  650</a></span>    int32_t <a class="code hl_variable" href="structnvtx_event_attributes__v2.html#aea6394028b2357cc25b41af32f9a7c8b">messageType</a>;            <span class="comment">/* nvtxMessageType_t */</span></div>
<div class="line"><a id="l00651" name="l00651"></a><span class="lineno">  651</span> </div>
<div class="line"><a id="l00656" name="l00656"></a><span class="lineno"><a class="line" href="structnvtx_event_attributes__v2.html#ac2c886998107953b9ca44c096650ac6f">  656</a></span>    <a class="code hl_union" href="unionnvtx_message_value__t.html">nvtxMessageValue_t</a> <a class="code hl_variable" href="structnvtx_event_attributes__v2.html#ac2c886998107953b9ca44c096650ac6f">message</a>;</div>
<div class="line"><a id="l00657" name="l00657"></a><span class="lineno">  657</span> </div>
<div class="line"><a id="l00658" name="l00658"></a><span class="lineno">  658</span>} <a class="code hl_struct" href="structnvtx_event_attributes__v2.html">nvtxEventAttributes_v2</a>;</div>
</div>
<div class="line"><a id="l00659" name="l00659"></a><span class="lineno">  659</span> </div>
<div class="line"><a id="l00660" name="l00660"></a><span class="lineno">  660</span><span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code hl_struct" href="structnvtx_event_attributes__v2.html">nvtxEventAttributes_v2</a> nvtxEventAttributes_t;</div>
<div class="line"><a id="l00661" name="l00661"></a><span class="lineno">  661</span> </div>
 <span class="comment">/*END defgroup*/</span><div class="line"><a id="l00663" name="l00663"></a><span class="lineno">  663</span><span class="comment">/* ========================================================================= */</span></div>
<div class="line"><a id="l00673" name="l00673"></a><span class="lineno">  673</span><span class="comment">/* ------------------------------------------------------------------------- */</span></div>
<div class="line"><a id="l00693" name="l00693"></a><span class="lineno"><a class="line" href="group___m_a_r_k_e_r_s___a_n_d___r_a_n_g_e_s.html#ga9e31d7977bcd3b4e64da577908f20e70">  693</a></span>NVTX_DECLSPEC <span class="keywordtype">void</span> NVTX_API <a class="code hl_function" href="group___m_a_r_k_e_r_s___a_n_d___r_a_n_g_e_s.html#ga9e31d7977bcd3b4e64da577908f20e70">nvtxDomainMarkEx</a>(nvtxDomainHandle_t domain, <span class="keyword">const</span> nvtxEventAttributes_t* eventAttrib);</div>
<div class="line"><a id="l00696" name="l00696"></a><span class="lineno">  696</span><span class="comment">/* ------------------------------------------------------------------------- */</span></div>
<div class="line"><a id="l00729" name="l00729"></a><span class="lineno"><a class="line" href="group___m_a_r_k_e_r_s___a_n_d___r_a_n_g_e_s.html#gaa31a1079a237d0772f84c56aeda7b26d">  729</a></span>NVTX_DECLSPEC <span class="keywordtype">void</span> NVTX_API <a class="code hl_function" href="group___m_a_r_k_e_r_s___a_n_d___r_a_n_g_e_s.html#gaa31a1079a237d0772f84c56aeda7b26d">nvtxMarkEx</a>(<span class="keyword">const</span> nvtxEventAttributes_t* eventAttrib);</div>
<div class="line"><a id="l00732" name="l00732"></a><span class="lineno">  732</span><span class="comment">/* ------------------------------------------------------------------------- */</span></div>
<div class="line"><a id="l00752" name="l00752"></a><span class="lineno"><a class="line" href="group___m_a_r_k_e_r_s___a_n_d___r_a_n_g_e_s.html#gaa8b4b68acc37bdaf14349b25752b26f9">  752</a></span>NVTX_DECLSPEC <span class="keywordtype">void</span> NVTX_API <a class="code hl_function" href="group___m_a_r_k_e_r_s___a_n_d___r_a_n_g_e_s.html#gaa8b4b68acc37bdaf14349b25752b26f9">nvtxMarkA</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code hl_variable" href="structnvtx_event_attributes__v2.html#ac2c886998107953b9ca44c096650ac6f">message</a>);</div>
<div class="line"><a id="l00753" name="l00753"></a><span class="lineno">  753</span>NVTX_DECLSPEC <span class="keywordtype">void</span> NVTX_API nvtxMarkW(<span class="keyword">const</span> <span class="keywordtype">wchar_t</span>* <a class="code hl_variable" href="structnvtx_event_attributes__v2.html#ac2c886998107953b9ca44c096650ac6f">message</a>);</div>
<div class="line"><a id="l00759" name="l00759"></a><span class="lineno">  759</span><span class="comment">/* ------------------------------------------------------------------------- */</span></div>
<div class="line"><a id="l00788" name="l00788"></a><span class="lineno"><a class="line" href="group___m_a_r_k_e_r_s___a_n_d___r_a_n_g_e_s.html#gaf1cdd49e2d1fde6a62fabf30009adbc0">  788</a></span>NVTX_DECLSPEC nvtxRangeId_t NVTX_API <a class="code hl_function" href="group___m_a_r_k_e_r_s___a_n_d___r_a_n_g_e_s.html#gaf1cdd49e2d1fde6a62fabf30009adbc0">nvtxDomainRangeStartEx</a>(nvtxDomainHandle_t domain, <span class="keyword">const</span> nvtxEventAttributes_t* eventAttrib);</div>
<div class="line"><a id="l00791" name="l00791"></a><span class="lineno">  791</span><span class="comment">/* ------------------------------------------------------------------------- */</span></div>
<div class="line"><a id="l00822" name="l00822"></a><span class="lineno"><a class="line" href="group___m_a_r_k_e_r_s___a_n_d___r_a_n_g_e_s.html#gadfb180099c39096e890ad698c5d3efab">  822</a></span>NVTX_DECLSPEC nvtxRangeId_t NVTX_API <a class="code hl_function" href="group___m_a_r_k_e_r_s___a_n_d___r_a_n_g_e_s.html#gadfb180099c39096e890ad698c5d3efab">nvtxRangeStartEx</a>(<span class="keyword">const</span> nvtxEventAttributes_t* eventAttrib);</div>
<div class="line"><a id="l00825" name="l00825"></a><span class="lineno">  825</span><span class="comment">/* ------------------------------------------------------------------------- */</span></div>
<div class="line"><a id="l00849" name="l00849"></a><span class="lineno"><a class="line" href="group___m_a_r_k_e_r_s___a_n_d___r_a_n_g_e_s.html#ga3069ca1d13ba40acd58bb2bde935c19b">  849</a></span>NVTX_DECLSPEC nvtxRangeId_t NVTX_API <a class="code hl_function" href="group___m_a_r_k_e_r_s___a_n_d___r_a_n_g_e_s.html#ga3069ca1d13ba40acd58bb2bde935c19b">nvtxRangeStartA</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code hl_variable" href="structnvtx_event_attributes__v2.html#ac2c886998107953b9ca44c096650ac6f">message</a>);</div>
<div class="line"><a id="l00850" name="l00850"></a><span class="lineno">  850</span>NVTX_DECLSPEC nvtxRangeId_t NVTX_API nvtxRangeStartW(<span class="keyword">const</span> <span class="keywordtype">wchar_t</span>* <a class="code hl_variable" href="structnvtx_event_attributes__v2.html#ac2c886998107953b9ca44c096650ac6f">message</a>);</div>
<div class="line"><a id="l00853" name="l00853"></a><span class="lineno">  853</span><span class="comment">/* ------------------------------------------------------------------------- */</span></div>
<div class="line"><a id="l00880" name="l00880"></a><span class="lineno"><a class="line" href="group___m_a_r_k_e_r_s___a_n_d___r_a_n_g_e_s.html#ga29d0e8aa08dec9486559287a27ce7f3f">  880</a></span>NVTX_DECLSPEC <span class="keywordtype">void</span> NVTX_API <a class="code hl_function" href="group___m_a_r_k_e_r_s___a_n_d___r_a_n_g_e_s.html#ga29d0e8aa08dec9486559287a27ce7f3f">nvtxDomainRangeEnd</a>(nvtxDomainHandle_t domain, nvtxRangeId_t <span class="keywordtype">id</span>);</div>
<div class="line"><a id="l00883" name="l00883"></a><span class="lineno">  883</span><span class="comment">/* ------------------------------------------------------------------------- */</span></div>
<div class="line"><a id="l00896" name="l00896"></a><span class="lineno"><a class="line" href="group___m_a_r_k_e_r_s___a_n_d___r_a_n_g_e_s.html#ga5e72fe22a8f4fde6e36ef15e7c1416bb">  896</a></span>NVTX_DECLSPEC <span class="keywordtype">void</span> NVTX_API <a class="code hl_function" href="group___m_a_r_k_e_r_s___a_n_d___r_a_n_g_e_s.html#ga5e72fe22a8f4fde6e36ef15e7c1416bb">nvtxRangeEnd</a>(nvtxRangeId_t <span class="keywordtype">id</span>);</div>
<div class="line"><a id="l00901" name="l00901"></a><span class="lineno">  901</span><span class="comment">/* ------------------------------------------------------------------------- */</span></div>
<div class="line"><a id="l00937" name="l00937"></a><span class="lineno"><a class="line" href="group___m_a_r_k_e_r_s___a_n_d___r_a_n_g_e_s.html#ga5bba05d37e356e080b8b68d6618f174d">  937</a></span>NVTX_DECLSPEC <span class="keywordtype">int</span> NVTX_API <a class="code hl_function" href="group___m_a_r_k_e_r_s___a_n_d___r_a_n_g_e_s.html#ga5bba05d37e356e080b8b68d6618f174d">nvtxDomainRangePushEx</a>(nvtxDomainHandle_t domain, <span class="keyword">const</span> nvtxEventAttributes_t* eventAttrib);</div>
<div class="line"><a id="l00940" name="l00940"></a><span class="lineno">  940</span><span class="comment">/* ------------------------------------------------------------------------- */</span></div>
<div class="line"><a id="l00975" name="l00975"></a><span class="lineno"><a class="line" href="group___m_a_r_k_e_r_s___a_n_d___r_a_n_g_e_s.html#gadab44822980b42e4b73b19edcd9de92c">  975</a></span>NVTX_DECLSPEC <span class="keywordtype">int</span> NVTX_API <a class="code hl_function" href="group___m_a_r_k_e_r_s___a_n_d___r_a_n_g_e_s.html#gadab44822980b42e4b73b19edcd9de92c">nvtxRangePushEx</a>(<span class="keyword">const</span> nvtxEventAttributes_t* eventAttrib);</div>
<div class="line"><a id="l00978" name="l00978"></a><span class="lineno">  978</span><span class="comment">/* ------------------------------------------------------------------------- */</span></div>
<div class="line"><a id="l01000" name="l01000"></a><span class="lineno"><a class="line" href="group___m_a_r_k_e_r_s___a_n_d___r_a_n_g_e_s.html#ga67e1802542efa43b20471ad8dec30c1c"> 1000</a></span>NVTX_DECLSPEC <span class="keywordtype">int</span> NVTX_API <a class="code hl_function" href="group___m_a_r_k_e_r_s___a_n_d___r_a_n_g_e_s.html#ga67e1802542efa43b20471ad8dec30c1c">nvtxRangePushA</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code hl_variable" href="structnvtx_event_attributes__v2.html#ac2c886998107953b9ca44c096650ac6f">message</a>);</div>
<div class="line"><a id="l01001" name="l01001"></a><span class="lineno"> 1001</span>NVTX_DECLSPEC <span class="keywordtype">int</span> NVTX_API nvtxRangePushW(<span class="keyword">const</span> <span class="keywordtype">wchar_t</span>* <a class="code hl_variable" href="structnvtx_event_attributes__v2.html#ac2c886998107953b9ca44c096650ac6f">message</a>);</div>
<div class="line"><a id="l01005" name="l01005"></a><span class="lineno"> 1005</span><span class="comment">/* ------------------------------------------------------------------------- */</span></div>
<div class="line"><a id="l01039" name="l01039"></a><span class="lineno"><a class="line" href="group___m_a_r_k_e_r_s___a_n_d___r_a_n_g_e_s.html#ga1b9340e7db3641deb5e14566c4fa6920"> 1039</a></span>NVTX_DECLSPEC <span class="keywordtype">int</span> NVTX_API <a class="code hl_function" href="group___m_a_r_k_e_r_s___a_n_d___r_a_n_g_e_s.html#ga1b9340e7db3641deb5e14566c4fa6920">nvtxDomainRangePop</a>(nvtxDomainHandle_t domain);</div>
<div class="line"><a id="l01042" name="l01042"></a><span class="lineno"> 1042</span><span class="comment">/* ------------------------------------------------------------------------- */</span></div>
<div class="line"><a id="l01063" name="l01063"></a><span class="lineno"><a class="line" href="group___m_a_r_k_e_r_s___a_n_d___r_a_n_g_e_s.html#ga44275a20ccd53472750b46988c772930"> 1063</a></span>NVTX_DECLSPEC <span class="keywordtype">int</span> NVTX_API <a class="code hl_function" href="group___m_a_r_k_e_r_s___a_n_d___r_a_n_g_e_s.html#ga44275a20ccd53472750b46988c772930">nvtxRangePop</a>(<span class="keywordtype">void</span>);</div>
 <span class="comment">/*END defgroup*/</span><div class="line"><a id="l01068" name="l01068"></a><span class="lineno"> 1068</span><span class="comment">/* ========================================================================= */</span></div>
<div class="line"><a id="l01077" name="l01077"></a><span class="lineno"> 1077</span><span class="comment">/*  ------------------------------------------------------------------------- */</span></div>
<div class="line"><a id="l01079" name="l01079"></a><span class="lineno"> 1079</span><span class="comment">/*  ------------------------------------------------------------------------- */</span></div>
<div class="line"><a id="l01080" name="l01080"></a><span class="lineno"> 1080</span> </div>
<div class="line"><a id="l01081" name="l01081"></a><span class="lineno"> 1081</span><span class="comment">/*  ------------------------------------------------------------------------- */</span></div>
<div class="line"><a id="l01088" name="l01088"></a><span class="lineno"> 1088</span><span class="preprocessor">#define NVTX_RESOURCE_MAKE_TYPE(CLASS, INDEX) ((((uint32_t)(NVTX_RESOURCE_CLASS_ ## CLASS))&lt;&lt;16)|((uint32_t)(INDEX)))</span></div>
<div class="line"><a id="l01089" name="l01089"></a><span class="lineno"> 1089</span><span class="preprocessor">#define NVTX_RESOURCE_CLASS_GENERIC 1</span></div>
<div class="line"><a id="l01092" name="l01092"></a><span class="lineno"> 1092</span><span class="comment">/* ------------------------------------------------------------------------- */</span></div>
<div class="foldopen" id="foldopen01100" data-start="{" data-end="};">
<div class="line"><a id="l01100" name="l01100"></a><span class="lineno"><a class="line" href="group___r_e_s_o_u_r_c_e___n_a_m_i_n_g.html#gabaaf30c7cfd72033a5521de326eacdab"> 1100</a></span><span class="keyword">typedef</span> <span class="keyword">enum</span> <a class="code hl_enumeration" href="group___r_e_s_o_u_r_c_e___n_a_m_i_n_g.html#gabaaf30c7cfd72033a5521de326eacdab">nvtxResourceGenericType_t</a></div>
<div class="line"><a id="l01101" name="l01101"></a><span class="lineno"> 1101</span>{</div>
<div class="line"><a id="l01102" name="l01102"></a><span class="lineno"> 1102</span>    NVTX_RESOURCE_TYPE_UNKNOWN = 0,</div>
<div class="line"><a id="l01103" name="l01103"></a><span class="lineno"><a class="line" href="group___r_e_s_o_u_r_c_e___n_a_m_i_n_g.html#ggabaaf30c7cfd72033a5521de326eacdabac874caafa9e3038f4c3302917278f57f"> 1103</a></span>    <a class="code hl_enumvalue" href="group___r_e_s_o_u_r_c_e___n_a_m_i_n_g.html#ggabaaf30c7cfd72033a5521de326eacdabac874caafa9e3038f4c3302917278f57f">NVTX_RESOURCE_TYPE_GENERIC_POINTER</a> = NVTX_RESOURCE_MAKE_TYPE(GENERIC, 1), </div>
<div class="line"><a id="l01104" name="l01104"></a><span class="lineno"><a class="line" href="group___r_e_s_o_u_r_c_e___n_a_m_i_n_g.html#ggabaaf30c7cfd72033a5521de326eacdabab9172fba948d1b324be487c212f6090b"> 1104</a></span>    <a class="code hl_enumvalue" href="group___r_e_s_o_u_r_c_e___n_a_m_i_n_g.html#ggabaaf30c7cfd72033a5521de326eacdabab9172fba948d1b324be487c212f6090b">NVTX_RESOURCE_TYPE_GENERIC_HANDLE</a> = NVTX_RESOURCE_MAKE_TYPE(GENERIC, 2), </div>
<div class="line"><a id="l01105" name="l01105"></a><span class="lineno"><a class="line" href="group___r_e_s_o_u_r_c_e___n_a_m_i_n_g.html#ggabaaf30c7cfd72033a5521de326eacdabad7cc4f337d6271605c43cac23f2fa65f"> 1105</a></span>    <a class="code hl_enumvalue" href="group___r_e_s_o_u_r_c_e___n_a_m_i_n_g.html#ggabaaf30c7cfd72033a5521de326eacdabad7cc4f337d6271605c43cac23f2fa65f">NVTX_RESOURCE_TYPE_GENERIC_THREAD_NATIVE</a> = NVTX_RESOURCE_MAKE_TYPE(GENERIC, 3), </div>
<div class="line"><a id="l01106" name="l01106"></a><span class="lineno"> 1106</span>    <a class="code hl_enumvalue" href="group___r_e_s_o_u_r_c_e___n_a_m_i_n_g.html#ggabaaf30c7cfd72033a5521de326eacdaba3a4a3e315e274f7d1665b2b4b47dbebb">NVTX_RESOURCE_TYPE_GENERIC_THREAD_POSIX</a> = NVTX_RESOURCE_MAKE_TYPE(GENERIC, 4) </div>
<div class="line"><a id="l01107" name="l01107"></a><span class="lineno"><a class="line" href="group___r_e_s_o_u_r_c_e___n_a_m_i_n_g.html#ggabaaf30c7cfd72033a5521de326eacdaba3a4a3e315e274f7d1665b2b4b47dbebb"> 1107</a></span>} <a class="code hl_enumeration" href="group___r_e_s_o_u_r_c_e___n_a_m_i_n_g.html#gabaaf30c7cfd72033a5521de326eacdab">nvtxResourceGenericType_t</a>;</div>
</div>
<div class="line"><a id="l01108" name="l01108"></a><span class="lineno"> 1108</span> </div>
<div class="line"><a id="l01109" name="l01109"></a><span class="lineno"> 1109</span> </div>
<div class="line"><a id="l01110" name="l01110"></a><span class="lineno"> 1110</span> </div>
<div class="foldopen" id="foldopen01186" data-start="{" data-end="};">
<div class="line"><a id="l01186" name="l01186"></a><span class="lineno"><a class="line" href="structnvtx_resource_attributes__v0.html"> 1186</a></span><span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code hl_struct" href="structnvtx_resource_attributes__v0.html">nvtxResourceAttributes_v0</a></div>
<div class="line"><a id="l01187" name="l01187"></a><span class="lineno"> 1187</span>{</div>
<div class="line"><a id="l01195" name="l01195"></a><span class="lineno"><a class="line" href="structnvtx_resource_attributes__v0.html#a6aa99e7e990a00e128b80bf9199bcd7a"> 1195</a></span>    uint16_t <a class="code hl_variable" href="structnvtx_resource_attributes__v0.html#a6aa99e7e990a00e128b80bf9199bcd7a">version</a>;</div>
<div class="line"><a id="l01196" name="l01196"></a><span class="lineno"> 1196</span> </div>
<div class="line"><a id="l01203" name="l01203"></a><span class="lineno"><a class="line" href="structnvtx_resource_attributes__v0.html#a3f251637098a16e51e3dd16f6f223282"> 1203</a></span>    uint16_t <a class="code hl_variable" href="structnvtx_resource_attributes__v0.html#a3f251637098a16e51e3dd16f6f223282">size</a>;</div>
<div class="line"><a id="l01204" name="l01204"></a><span class="lineno"> 1204</span> </div>
<div class="line"><a id="l01213" name="l01213"></a><span class="lineno"><a class="line" href="structnvtx_resource_attributes__v0.html#acec361e5bafce002e93a604e36bdf31b"> 1213</a></span>    int32_t <a class="code hl_variable" href="structnvtx_resource_attributes__v0.html#acec361e5bafce002e93a604e36bdf31b">identifierType</a>;            <span class="comment">/* values from enums following the pattern nvtxResource[name]Type_t */</span></div>
<div class="line"><a id="l01214" name="l01214"></a><span class="lineno"> 1214</span> </div>
<div class="foldopen" id="foldopen01222" data-start="{" data-end="};">
<div class="line"><a id="l01222" name="l01222"></a><span class="lineno"><a class="line" href="unionnvtx_resource_attributes__v0_1_1identifier__t.html"> 1222</a></span>    <span class="keyword">union </span><a class="code hl_union" href="unionnvtx_resource_attributes__v0_1_1identifier__t.html">identifier_t</a></div>
<div class="line"><a id="l01223" name="l01223"></a><span class="lineno"> 1223</span>    {</div>
<div class="line"><a id="l01224" name="l01224"></a><span class="lineno"> 1224</span>        <span class="keyword">const</span> <span class="keywordtype">void</span>* pValue;</div>
<div class="line"><a id="l01225" name="l01225"></a><span class="lineno"> 1225</span>        uint64_t ullValue;</div>
<div class="line"><a id="l01226" name="l01226"></a><span class="lineno"> 1226</span>    } identifier;</div>
</div>
<div class="line"><a id="l01227" name="l01227"></a><span class="lineno"> 1227</span> </div>
<div class="line"><a id="l01235" name="l01235"></a><span class="lineno"><a class="line" href="structnvtx_resource_attributes__v0.html#a23bd2e672a9fe0b600e7d3599da7443a"> 1235</a></span>    int32_t <a class="code hl_variable" href="structnvtx_resource_attributes__v0.html#a23bd2e672a9fe0b600e7d3599da7443a">messageType</a>;            <span class="comment">/* nvtxMessageType_t */</span></div>
<div class="line"><a id="l01236" name="l01236"></a><span class="lineno"> 1236</span> </div>
<div class="line"><a id="l01241" name="l01241"></a><span class="lineno"><a class="line" href="structnvtx_resource_attributes__v0.html#a6fb8c53dcd2860bada12560d5b2e586f"> 1241</a></span>    <a class="code hl_union" href="unionnvtx_message_value__t.html">nvtxMessageValue_t</a> <a class="code hl_variable" href="structnvtx_resource_attributes__v0.html#a6fb8c53dcd2860bada12560d5b2e586f">message</a>;</div>
<div class="line"><a id="l01242" name="l01242"></a><span class="lineno"> 1242</span> </div>
<div class="line"><a id="l01243" name="l01243"></a><span class="lineno"> 1243</span>} <a class="code hl_struct" href="structnvtx_resource_attributes__v0.html">nvtxResourceAttributes_v0</a>;</div>
</div>
<div class="line"><a id="l01244" name="l01244"></a><span class="lineno"> 1244</span> </div>
<div class="line"><a id="l01245" name="l01245"></a><span class="lineno"> 1245</span><span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code hl_struct" href="structnvtx_resource_attributes__v0.html">nvtxResourceAttributes_v0</a> nvtxResourceAttributes_t;</div>
<div class="line"><a id="l01246" name="l01246"></a><span class="lineno"> 1246</span> </div>
<div class="line"><a id="l01247" name="l01247"></a><span class="lineno"> 1247</span><span class="comment">/* \cond SHOW_HIDDEN</span></div>
<div class="line"><a id="l01248" name="l01248"></a><span class="lineno"> 1248</span><span class="comment">* \version \NVTX_VERSION_2</span></div>
<div class="line"><a id="l01249" name="l01249"></a><span class="lineno"> 1249</span><span class="comment">*/</span></div>
<div class="line"><a id="l01250" name="l01250"></a><span class="lineno"> 1250</span><span class="preprocessor">#define NVTX_RESOURCE_ATTRIB_STRUCT_SIZE ( (uint16_t)( sizeof(nvtxResourceAttributes_v0) ) )</span></div>
<div class="line"><a id="l01251" name="l01251"></a><span class="lineno"> 1251</span><span class="keyword">typedef</span> <span class="keyword">struct </span>nvtxResourceHandle* nvtxResourceHandle_t;</div>
<div class="line"><a id="l01256" name="l01256"></a><span class="lineno"> 1256</span><span class="comment">/* ------------------------------------------------------------------------- */</span></div>
<div class="line"><a id="l01286" name="l01286"></a><span class="lineno"><a class="line" href="group___r_e_s_o_u_r_c_e___n_a_m_i_n_g.html#ga12271bb3f03619d5862bd5a900f9aac1"> 1286</a></span>NVTX_DECLSPEC nvtxResourceHandle_t NVTX_API <a class="code hl_function" href="group___r_e_s_o_u_r_c_e___n_a_m_i_n_g.html#ga12271bb3f03619d5862bd5a900f9aac1">nvtxDomainResourceCreate</a>(nvtxDomainHandle_t domain, nvtxResourceAttributes_t* attribs);</div>
<div class="line"><a id="l01289" name="l01289"></a><span class="lineno"> 1289</span><span class="comment">/* ------------------------------------------------------------------------- */</span></div>
<div class="line"><a id="l01316" name="l01316"></a><span class="lineno"><a class="line" href="group___r_e_s_o_u_r_c_e___n_a_m_i_n_g.html#gaa95f902006e108c6fcca5c76b2d4a2b1"> 1316</a></span>NVTX_DECLSPEC <span class="keywordtype">void</span> NVTX_API <a class="code hl_function" href="group___r_e_s_o_u_r_c_e___n_a_m_i_n_g.html#gaa95f902006e108c6fcca5c76b2d4a2b1">nvtxDomainResourceDestroy</a>(nvtxResourceHandle_t resource);</div>
<div class="line"><a id="l01322" name="l01322"></a><span class="lineno"> 1322</span><span class="comment">/* ------------------------------------------------------------------------- */</span></div>
<div class="line"><a id="l01350" name="l01350"></a><span class="lineno"><a class="line" href="group___r_e_s_o_u_r_c_e___n_a_m_i_n_g.html#gaf2898af52be50279355c0ee1f57afbaa"> 1350</a></span>NVTX_DECLSPEC <span class="keywordtype">void</span> NVTX_API <a class="code hl_function" href="group___r_e_s_o_u_r_c_e___n_a_m_i_n_g.html#gaf2898af52be50279355c0ee1f57afbaa">nvtxDomainNameCategoryA</a>(nvtxDomainHandle_t domain, uint32_t category, <span class="keyword">const</span> <span class="keywordtype">char</span>* name);</div>
<div class="line"><a id="l01351" name="l01351"></a><span class="lineno"> 1351</span>NVTX_DECLSPEC <span class="keywordtype">void</span> NVTX_API nvtxDomainNameCategoryW(nvtxDomainHandle_t domain, uint32_t category, <span class="keyword">const</span> <span class="keywordtype">wchar_t</span>* name);</div>
<div class="line"><a id="l01375" name="l01375"></a><span class="lineno"><a class="line" href="group___r_e_s_o_u_r_c_e___n_a_m_i_n_g.html#ga801e84711db9de7b28235e529b101e4a"> 1375</a></span>NVTX_DECLSPEC <span class="keywordtype">void</span> NVTX_API <a class="code hl_function" href="group___r_e_s_o_u_r_c_e___n_a_m_i_n_g.html#ga801e84711db9de7b28235e529b101e4a">nvtxNameCategoryA</a>(uint32_t category, <span class="keyword">const</span> <span class="keywordtype">char</span>* name);</div>
<div class="line"><a id="l01376" name="l01376"></a><span class="lineno"> 1376</span>NVTX_DECLSPEC <span class="keywordtype">void</span> NVTX_API nvtxNameCategoryW(uint32_t category, <span class="keyword">const</span> <span class="keywordtype">wchar_t</span>* name);</div>
<div class="line"><a id="l01381" name="l01381"></a><span class="lineno"> 1381</span><span class="comment">/* ------------------------------------------------------------------------- */</span></div>
<div class="line"><a id="l01442" name="l01442"></a><span class="lineno"><a class="line" href="group___r_e_s_o_u_r_c_e___n_a_m_i_n_g.html#gaeb7d5b25e1147fc4aaf1f3acb8e719d0"> 1442</a></span>NVTX_DECLSPEC <span class="keywordtype">void</span> NVTX_API <a class="code hl_function" href="group___r_e_s_o_u_r_c_e___n_a_m_i_n_g.html#gaeb7d5b25e1147fc4aaf1f3acb8e719d0">nvtxNameOsThreadA</a>(uint32_t threadId, <span class="keyword">const</span> <span class="keywordtype">char</span>* name);</div>
<div class="line"><a id="l01443" name="l01443"></a><span class="lineno"> 1443</span>NVTX_DECLSPEC <span class="keywordtype">void</span> NVTX_API nvtxNameOsThreadW(uint32_t threadId, <span class="keyword">const</span> <span class="keywordtype">wchar_t</span>* name);</div>
 <span class="comment">/*END defgroup*/</span><div class="line"><a id="l01448" name="l01448"></a><span class="lineno"> 1448</span><span class="comment">/* ========================================================================= */</span></div>
<div class="line"><a id="l01460" name="l01460"></a><span class="lineno"> 1460</span><span class="comment">/* ------------------------------------------------------------------------- */</span></div>
<div class="line"><a id="l01491" name="l01491"></a><span class="lineno"><a class="line" href="group___s_t_r_i_n_g___r_e_g_i_s_t_r_a_t_i_o_n.html#gaed4907d1c69789ca32d59788a6386a1f"> 1491</a></span>NVTX_DECLSPEC nvtxStringHandle_t NVTX_API <a class="code hl_function" href="group___s_t_r_i_n_g___r_e_g_i_s_t_r_a_t_i_o_n.html#gaed4907d1c69789ca32d59788a6386a1f">nvtxDomainRegisterStringA</a>(nvtxDomainHandle_t domain, <span class="keyword">const</span> <span class="keywordtype">char</span>* <span class="keywordtype">string</span>);</div>
<div class="line"><a id="l01492" name="l01492"></a><span class="lineno"> 1492</span>NVTX_DECLSPEC nvtxStringHandle_t NVTX_API nvtxDomainRegisterStringW(nvtxDomainHandle_t domain, <span class="keyword">const</span> <span class="keywordtype">wchar_t</span>* <span class="keywordtype">string</span>);</div>
 <span class="comment">/*END defgroup*/</span><div class="line"><a id="l01496" name="l01496"></a><span class="lineno"> 1496</span><span class="comment">/* ========================================================================= */</span></div>
<div class="line"><a id="l01515" name="l01515"></a><span class="lineno"> 1515</span><span class="comment">/* ------------------------------------------------------------------------- */</span></div>
<div class="line"><a id="l01554" name="l01554"></a><span class="lineno"><a class="line" href="group___d_o_m_a_i_n_s.html#ga2bbf44a48a4a46bf8900bd886524d87d"> 1554</a></span>NVTX_DECLSPEC nvtxDomainHandle_t NVTX_API <a class="code hl_function" href="group___d_o_m_a_i_n_s.html#ga2bbf44a48a4a46bf8900bd886524d87d">nvtxDomainCreateA</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* name);</div>
<div class="line"><a id="l01555" name="l01555"></a><span class="lineno"> 1555</span>NVTX_DECLSPEC nvtxDomainHandle_t NVTX_API nvtxDomainCreateW(<span class="keyword">const</span> <span class="keywordtype">wchar_t</span>* name);</div>
<div class="line"><a id="l01558" name="l01558"></a><span class="lineno"> 1558</span><span class="comment">/* ------------------------------------------------------------------------- */</span></div>
<div class="line"><a id="l01578" name="l01578"></a><span class="lineno"><a class="line" href="group___d_o_m_a_i_n_s.html#ga58b2508b5bbdfdd3cf30e4eaeb15a885"> 1578</a></span>NVTX_DECLSPEC <span class="keywordtype">void</span> NVTX_API <a class="code hl_function" href="group___d_o_m_a_i_n_s.html#ga58b2508b5bbdfdd3cf30e4eaeb15a885">nvtxDomainDestroy</a>(nvtxDomainHandle_t domain);</div>
 <span class="comment">/*END defgroup*/</span><div class="line"><a id="l01583" name="l01583"></a><span class="lineno"> 1583</span><span class="comment">/* ========================================================================= */</span></div>
<div class="line"><a id="l01586" name="l01586"></a><span class="lineno"> 1586</span><span class="preprocessor">#ifdef UNICODE</span></div>
<div class="line"><a id="l01587" name="l01587"></a><span class="lineno"> 1587</span><span class="preprocessor">    #define nvtxMark            nvtxMarkW</span></div>
<div class="line"><a id="l01588" name="l01588"></a><span class="lineno"> 1588</span><span class="preprocessor">    #define nvtxRangeStart      nvtxRangeStartW</span></div>
<div class="line"><a id="l01589" name="l01589"></a><span class="lineno"> 1589</span><span class="preprocessor">    #define nvtxRangePush       nvtxRangePushW</span></div>
<div class="line"><a id="l01590" name="l01590"></a><span class="lineno"> 1590</span><span class="preprocessor">    #define nvtxNameCategory    nvtxNameCategoryW</span></div>
<div class="line"><a id="l01591" name="l01591"></a><span class="lineno"> 1591</span><span class="preprocessor">    #define nvtxNameOsThread    nvtxNameOsThreadW</span></div>
<div class="line"><a id="l01592" name="l01592"></a><span class="lineno"> 1592</span>    <span class="comment">/* NVTX_VERSION_2 */</span></div>
<div class="line"><a id="l01593" name="l01593"></a><span class="lineno"> 1593</span><span class="preprocessor">    #define nvtxDomainCreate         nvtxDomainCreateW</span></div>
<div class="line"><a id="l01594" name="l01594"></a><span class="lineno"> 1594</span><span class="preprocessor">    #define nvtxDomainRegisterString nvtxDomainRegisterStringW</span></div>
<div class="line"><a id="l01595" name="l01595"></a><span class="lineno"> 1595</span><span class="preprocessor">    #define nvtxDomainNameCategory   nvtxDomainNameCategoryW</span></div>
<div class="line"><a id="l01596" name="l01596"></a><span class="lineno"> 1596</span><span class="preprocessor">#else</span></div>
<div class="line"><a id="l01597" name="l01597"></a><span class="lineno"> 1597</span><span class="preprocessor">    #define nvtxMark            nvtxMarkA</span></div>
<div class="line"><a id="l01598" name="l01598"></a><span class="lineno"> 1598</span><span class="preprocessor">    #define nvtxRangeStart      nvtxRangeStartA</span></div>
<div class="line"><a id="l01599" name="l01599"></a><span class="lineno"> 1599</span><span class="preprocessor">    #define nvtxRangePush       nvtxRangePushA</span></div>
<div class="line"><a id="l01600" name="l01600"></a><span class="lineno"> 1600</span><span class="preprocessor">    #define nvtxNameCategory    nvtxNameCategoryA</span></div>
<div class="line"><a id="l01601" name="l01601"></a><span class="lineno"> 1601</span><span class="preprocessor">    #define nvtxNameOsThread    nvtxNameOsThreadA</span></div>
<div class="line"><a id="l01602" name="l01602"></a><span class="lineno"> 1602</span>    <span class="comment">/* NVTX_VERSION_2 */</span></div>
<div class="line"><a id="l01603" name="l01603"></a><span class="lineno"> 1603</span><span class="preprocessor">    #define nvtxDomainCreate         nvtxDomainCreateA</span></div>
<div class="line"><a id="l01604" name="l01604"></a><span class="lineno"> 1604</span><span class="preprocessor">    #define nvtxDomainRegisterString nvtxDomainRegisterStringA</span></div>
<div class="line"><a id="l01605" name="l01605"></a><span class="lineno"> 1605</span><span class="preprocessor">    #define nvtxDomainNameCategory   nvtxDomainNameCategoryA</span></div>
<div class="line"><a id="l01606" name="l01606"></a><span class="lineno"> 1606</span><span class="preprocessor">#endif</span></div>
<div class="line"><a id="l01607" name="l01607"></a><span class="lineno"> 1607</span> </div>
<div class="line"><a id="l01610" name="l01610"></a><span class="lineno"> 1610</span><span class="preprocessor">#ifdef __cplusplus</span></div>
<div class="line"><a id="l01611" name="l01611"></a><span class="lineno"> 1611</span>} <span class="comment">/* extern &quot;C&quot; */</span></div>
<div class="line"><a id="l01612" name="l01612"></a><span class="lineno"> 1612</span><span class="preprocessor">#endif </span><span class="comment">/* __cplusplus */</span><span class="preprocessor"></span></div>
<div class="line"><a id="l01613" name="l01613"></a><span class="lineno"> 1613</span> </div>
<div class="line"><a id="l01614" name="l01614"></a><span class="lineno"> 1614</span><span class="preprocessor">#define NVTX_IMPL_GUARD </span><span class="comment">/* Ensure other headers cannot be included directly */</span><span class="preprocessor"></span></div>
<div class="line"><a id="l01615" name="l01615"></a><span class="lineno"> 1615</span> </div>
<div class="line"><a id="l01616" name="l01616"></a><span class="lineno"> 1616</span><span class="preprocessor">#include &quot;nvtxDetail/nvtxTypes.h&quot;</span></div>
<div class="line"><a id="l01617" name="l01617"></a><span class="lineno"> 1617</span> </div>
<div class="line"><a id="l01618" name="l01618"></a><span class="lineno"> 1618</span><span class="preprocessor">#ifndef NVTX_NO_IMPL</span></div>
<div class="line"><a id="l01619" name="l01619"></a><span class="lineno"> 1619</span><span class="preprocessor">#include &quot;nvtxDetail/nvtxImpl.h&quot;</span></div>
<div class="line"><a id="l01620" name="l01620"></a><span class="lineno"> 1620</span><span class="preprocessor">#endif </span><span class="comment">/*NVTX_NO_IMPL*/</span><span class="preprocessor"></span></div>
<div class="line"><a id="l01621" name="l01621"></a><span class="lineno"> 1621</span> </div>
<div class="line"><a id="l01622" name="l01622"></a><span class="lineno"> 1622</span><span class="preprocessor">#undef NVTX_IMPL_GUARD</span></div>
<div class="line"><a id="l01623" name="l01623"></a><span class="lineno"> 1623</span> </div>
<div class="line"><a id="l01624" name="l01624"></a><span class="lineno"> 1624</span><span class="preprocessor">#endif </span><span class="comment">/* !defined(NVTX_VERSION) */</span><span class="preprocessor"></span></div>
<div class="ttc" id="agroup___d_o_m_a_i_n_s_html_ga2bbf44a48a4a46bf8900bd886524d87d"><div class="ttname"><a href="group___d_o_m_a_i_n_s.html#ga2bbf44a48a4a46bf8900bd886524d87d">nvtxDomainCreateA</a></div><div class="ttdeci">NVTX_DECLSPEC nvtxDomainHandle_t NVTX_API nvtxDomainCreateA(const char *name)</div><div class="ttdoc">Register a NVTX domain.</div></div>
<div class="ttc" id="agroup___d_o_m_a_i_n_s_html_ga58b2508b5bbdfdd3cf30e4eaeb15a885"><div class="ttname"><a href="group___d_o_m_a_i_n_s.html#ga58b2508b5bbdfdd3cf30e4eaeb15a885">nvtxDomainDestroy</a></div><div class="ttdeci">NVTX_DECLSPEC void NVTX_API nvtxDomainDestroy(nvtxDomainHandle_t domain)</div><div class="ttdoc">Unregister a NVTX domain.</div></div>
<div class="ttc" id="agroup___e_v_e_n_t___a_t_t_r_i_b_u_t_e_s_html_ga2cd77099163a1997f5adff5457e6e5d7"><div class="ttname"><a href="group___e_v_e_n_t___a_t_t_r_i_b_u_t_e_s.html#ga2cd77099163a1997f5adff5457e6e5d7">nvtxPayloadType_t</a></div><div class="ttdeci">nvtxPayloadType_t</div><div class="ttdef"><b>Definition</b> <a href="nv_tools_ext_8h_source.html#l00478">nvToolsExt.h:479</a></div></div>
<div class="ttc" id="agroup___e_v_e_n_t___a_t_t_r_i_b_u_t_e_s_html_gga2cd77099163a1997f5adff5457e6e5d7a35672e4d7c924aa3d7ff9a61d4874e88"><div class="ttname"><a href="group___e_v_e_n_t___a_t_t_r_i_b_u_t_e_s.html#gga2cd77099163a1997f5adff5457e6e5d7a35672e4d7c924aa3d7ff9a61d4874e88">NVTX_PAYLOAD_TYPE_INT32</a></div><div class="ttdeci">@ NVTX_PAYLOAD_TYPE_INT32</div><div class="ttdef"><b>Definition</b> <a href="nv_tools_ext_8h_source.html#l00486">nvToolsExt.h:486</a></div></div>
<div class="ttc" id="agroup___e_v_e_n_t___a_t_t_r_i_b_u_t_e_s_html_gga2cd77099163a1997f5adff5457e6e5d7a77fdb6810a8a4a55bdce8775977993b4"><div class="ttname"><a href="group___e_v_e_n_t___a_t_t_r_i_b_u_t_e_s.html#gga2cd77099163a1997f5adff5457e6e5d7a77fdb6810a8a4a55bdce8775977993b4">NVTX_PAYLOAD_TYPE_DOUBLE</a></div><div class="ttdeci">@ NVTX_PAYLOAD_TYPE_DOUBLE</div><div class="ttdef"><b>Definition</b> <a href="nv_tools_ext_8h_source.html#l00483">nvToolsExt.h:483</a></div></div>
<div class="ttc" id="agroup___e_v_e_n_t___a_t_t_r_i_b_u_t_e_s_html_gga2cd77099163a1997f5adff5457e6e5d7a79a07a8c0ddee984d2ad47c4dd77fe81"><div class="ttname"><a href="group___e_v_e_n_t___a_t_t_r_i_b_u_t_e_s.html#gga2cd77099163a1997f5adff5457e6e5d7a79a07a8c0ddee984d2ad47c4dd77fe81">NVTX_PAYLOAD_UNKNOWN</a></div><div class="ttdeci">@ NVTX_PAYLOAD_UNKNOWN</div><div class="ttdef"><b>Definition</b> <a href="nv_tools_ext_8h_source.html#l00480">nvToolsExt.h:480</a></div></div>
<div class="ttc" id="agroup___e_v_e_n_t___a_t_t_r_i_b_u_t_e_s_html_gga2cd77099163a1997f5adff5457e6e5d7aac1bc824559448716960c00e4b4a0b70"><div class="ttname"><a href="group___e_v_e_n_t___a_t_t_r_i_b_u_t_e_s.html#gga2cd77099163a1997f5adff5457e6e5d7aac1bc824559448716960c00e4b4a0b70">NVTX_PAYLOAD_TYPE_UNSIGNED_INT32</a></div><div class="ttdeci">@ NVTX_PAYLOAD_TYPE_UNSIGNED_INT32</div><div class="ttdef"><b>Definition</b> <a href="nv_tools_ext_8h_source.html#l00485">nvToolsExt.h:485</a></div></div>
<div class="ttc" id="agroup___e_v_e_n_t___a_t_t_r_i_b_u_t_e_s_html_gga2cd77099163a1997f5adff5457e6e5d7ac19a6bd5c48c97f46a1474ed64509fe8"><div class="ttname"><a href="group___e_v_e_n_t___a_t_t_r_i_b_u_t_e_s.html#gga2cd77099163a1997f5adff5457e6e5d7ac19a6bd5c48c97f46a1474ed64509fe8">NVTX_PAYLOAD_TYPE_FLOAT</a></div><div class="ttdeci">@ NVTX_PAYLOAD_TYPE_FLOAT</div><div class="ttdef"><b>Definition</b> <a href="nv_tools_ext_8h_source.html#l00488">nvToolsExt.h:487</a></div></div>
<div class="ttc" id="agroup___e_v_e_n_t___a_t_t_r_i_b_u_t_e_s_html_gga2cd77099163a1997f5adff5457e6e5d7ac48f6e938e3bdeaf7fdf65a1fb61f532"><div class="ttname"><a href="group___e_v_e_n_t___a_t_t_r_i_b_u_t_e_s.html#gga2cd77099163a1997f5adff5457e6e5d7ac48f6e938e3bdeaf7fdf65a1fb61f532">NVTX_PAYLOAD_TYPE_INT64</a></div><div class="ttdeci">@ NVTX_PAYLOAD_TYPE_INT64</div><div class="ttdef"><b>Definition</b> <a href="nv_tools_ext_8h_source.html#l00482">nvToolsExt.h:482</a></div></div>
<div class="ttc" id="agroup___e_v_e_n_t___a_t_t_r_i_b_u_t_e_s_html_gga2cd77099163a1997f5adff5457e6e5d7ac97c31e807ae3a2c64ea7e07cd7cdb9b"><div class="ttname"><a href="group___e_v_e_n_t___a_t_t_r_i_b_u_t_e_s.html#gga2cd77099163a1997f5adff5457e6e5d7ac97c31e807ae3a2c64ea7e07cd7cdb9b">NVTX_PAYLOAD_TYPE_UNSIGNED_INT64</a></div><div class="ttdeci">@ NVTX_PAYLOAD_TYPE_UNSIGNED_INT64</div><div class="ttdef"><b>Definition</b> <a href="nv_tools_ext_8h_source.html#l00481">nvToolsExt.h:481</a></div></div>
<div class="ttc" id="agroup___g_e_n_e_r_a_l_html_gad03fafe52eed68d119c1c4ea6e92a521"><div class="ttname"><a href="group___g_e_n_e_r_a_l.html#gad03fafe52eed68d119c1c4ea6e92a521">nvtxColorType_t</a></div><div class="ttdeci">nvtxColorType_t</div><div class="ttdef"><b>Definition</b> <a href="nv_tools_ext_8h_source.html#l00412">nvToolsExt.h:413</a></div></div>
<div class="ttc" id="agroup___g_e_n_e_r_a_l_html_gaf74d5ab5269ee3c1de7aa0059ca31c46"><div class="ttname"><a href="group___g_e_n_e_r_a_l.html#gaf74d5ab5269ee3c1de7aa0059ca31c46">nvtxMessageType_t</a></div><div class="ttdeci">nvtxMessageType_t</div><div class="ttdef"><b>Definition</b> <a href="nv_tools_ext_8h_source.html#l00421">nvToolsExt.h:422</a></div></div>
<div class="ttc" id="agroup___g_e_n_e_r_a_l_html_ggad03fafe52eed68d119c1c4ea6e92a521a63a59d87ec996a2eb620e26e37bd705e"><div class="ttname"><a href="group___g_e_n_e_r_a_l.html#ggad03fafe52eed68d119c1c4ea6e92a521a63a59d87ec996a2eb620e26e37bd705e">NVTX_COLOR_ARGB</a></div><div class="ttdeci">@ NVTX_COLOR_ARGB</div><div class="ttdef"><b>Definition</b> <a href="nv_tools_ext_8h_source.html#l00416">nvToolsExt.h:415</a></div></div>
<div class="ttc" id="agroup___g_e_n_e_r_a_l_html_ggad03fafe52eed68d119c1c4ea6e92a521a7925dcdd1d707cb5db39f830eba5bf9e"><div class="ttname"><a href="group___g_e_n_e_r_a_l.html#ggad03fafe52eed68d119c1c4ea6e92a521a7925dcdd1d707cb5db39f830eba5bf9e">NVTX_COLOR_UNKNOWN</a></div><div class="ttdeci">@ NVTX_COLOR_UNKNOWN</div><div class="ttdef"><b>Definition</b> <a href="nv_tools_ext_8h_source.html#l00414">nvToolsExt.h:414</a></div></div>
<div class="ttc" id="agroup___g_e_n_e_r_a_l_html_ggaf74d5ab5269ee3c1de7aa0059ca31c46a4dfd8514ece4f6d1b0aa350b882950ea"><div class="ttname"><a href="group___g_e_n_e_r_a_l.html#ggaf74d5ab5269ee3c1de7aa0059ca31c46a4dfd8514ece4f6d1b0aa350b882950ea">NVTX_MESSAGE_TYPE_REGISTERED</a></div><div class="ttdeci">@ NVTX_MESSAGE_TYPE_REGISTERED</div><div class="ttdef"><b>Definition</b> <a href="nv_tools_ext_8h_source.html#l00429">nvToolsExt.h:427</a></div></div>
<div class="ttc" id="agroup___g_e_n_e_r_a_l_html_ggaf74d5ab5269ee3c1de7aa0059ca31c46aac3516268f6c4b3f188b551ac5e1688b"><div class="ttname"><a href="group___g_e_n_e_r_a_l.html#ggaf74d5ab5269ee3c1de7aa0059ca31c46aac3516268f6c4b3f188b551ac5e1688b">NVTX_MESSAGE_TYPE_UNICODE</a></div><div class="ttdeci">@ NVTX_MESSAGE_TYPE_UNICODE</div><div class="ttdef"><b>Definition</b> <a href="nv_tools_ext_8h_source.html#l00425">nvToolsExt.h:425</a></div></div>
<div class="ttc" id="agroup___g_e_n_e_r_a_l_html_ggaf74d5ab5269ee3c1de7aa0059ca31c46aad30a1fb6651b7f2c36d8d19ade74576"><div class="ttname"><a href="group___g_e_n_e_r_a_l.html#ggaf74d5ab5269ee3c1de7aa0059ca31c46aad30a1fb6651b7f2c36d8d19ade74576">NVTX_MESSAGE_TYPE_ASCII</a></div><div class="ttdeci">@ NVTX_MESSAGE_TYPE_ASCII</div><div class="ttdef"><b>Definition</b> <a href="nv_tools_ext_8h_source.html#l00424">nvToolsExt.h:424</a></div></div>
<div class="ttc" id="agroup___g_e_n_e_r_a_l_html_ggaf74d5ab5269ee3c1de7aa0059ca31c46ac0d2f55b27e96f691a06efc5c7c4c134"><div class="ttname"><a href="group___g_e_n_e_r_a_l.html#ggaf74d5ab5269ee3c1de7aa0059ca31c46ac0d2f55b27e96f691a06efc5c7c4c134">NVTX_MESSAGE_UNKNOWN</a></div><div class="ttdeci">@ NVTX_MESSAGE_UNKNOWN</div><div class="ttdef"><b>Definition</b> <a href="nv_tools_ext_8h_source.html#l00423">nvToolsExt.h:423</a></div></div>
<div class="ttc" id="agroup___m_a_r_k_e_r_s___a_n_d___r_a_n_g_e_s_html_ga1b9340e7db3641deb5e14566c4fa6920"><div class="ttname"><a href="group___m_a_r_k_e_r_s___a_n_d___r_a_n_g_e_s.html#ga1b9340e7db3641deb5e14566c4fa6920">nvtxDomainRangePop</a></div><div class="ttdeci">NVTX_DECLSPEC int NVTX_API nvtxDomainRangePop(nvtxDomainHandle_t domain)</div><div class="ttdoc">Ends a nested thread range.</div></div>
<div class="ttc" id="agroup___m_a_r_k_e_r_s___a_n_d___r_a_n_g_e_s_html_ga29d0e8aa08dec9486559287a27ce7f3f"><div class="ttname"><a href="group___m_a_r_k_e_r_s___a_n_d___r_a_n_g_e_s.html#ga29d0e8aa08dec9486559287a27ce7f3f">nvtxDomainRangeEnd</a></div><div class="ttdeci">NVTX_DECLSPEC void NVTX_API nvtxDomainRangeEnd(nvtxDomainHandle_t domain, nvtxRangeId_t id)</div><div class="ttdoc">Ends a process range.</div></div>
<div class="ttc" id="agroup___m_a_r_k_e_r_s___a_n_d___r_a_n_g_e_s_html_ga3069ca1d13ba40acd58bb2bde935c19b"><div class="ttname"><a href="group___m_a_r_k_e_r_s___a_n_d___r_a_n_g_e_s.html#ga3069ca1d13ba40acd58bb2bde935c19b">nvtxRangeStartA</a></div><div class="ttdeci">NVTX_DECLSPEC nvtxRangeId_t NVTX_API nvtxRangeStartA(const char *message)</div><div class="ttdoc">Starts a process range.</div></div>
<div class="ttc" id="agroup___m_a_r_k_e_r_s___a_n_d___r_a_n_g_e_s_html_ga44275a20ccd53472750b46988c772930"><div class="ttname"><a href="group___m_a_r_k_e_r_s___a_n_d___r_a_n_g_e_s.html#ga44275a20ccd53472750b46988c772930">nvtxRangePop</a></div><div class="ttdeci">NVTX_DECLSPEC int NVTX_API nvtxRangePop(void)</div><div class="ttdoc">Ends a nested thread range.</div></div>
<div class="ttc" id="agroup___m_a_r_k_e_r_s___a_n_d___r_a_n_g_e_s_html_ga5bba05d37e356e080b8b68d6618f174d"><div class="ttname"><a href="group___m_a_r_k_e_r_s___a_n_d___r_a_n_g_e_s.html#ga5bba05d37e356e080b8b68d6618f174d">nvtxDomainRangePushEx</a></div><div class="ttdeci">NVTX_DECLSPEC int NVTX_API nvtxDomainRangePushEx(nvtxDomainHandle_t domain, const nvtxEventAttributes_t *eventAttrib)</div><div class="ttdoc">Starts a nested thread range.</div></div>
<div class="ttc" id="agroup___m_a_r_k_e_r_s___a_n_d___r_a_n_g_e_s_html_ga5e72fe22a8f4fde6e36ef15e7c1416bb"><div class="ttname"><a href="group___m_a_r_k_e_r_s___a_n_d___r_a_n_g_e_s.html#ga5e72fe22a8f4fde6e36ef15e7c1416bb">nvtxRangeEnd</a></div><div class="ttdeci">NVTX_DECLSPEC void NVTX_API nvtxRangeEnd(nvtxRangeId_t id)</div><div class="ttdoc">Ends a process range.</div></div>
<div class="ttc" id="agroup___m_a_r_k_e_r_s___a_n_d___r_a_n_g_e_s_html_ga67e1802542efa43b20471ad8dec30c1c"><div class="ttname"><a href="group___m_a_r_k_e_r_s___a_n_d___r_a_n_g_e_s.html#ga67e1802542efa43b20471ad8dec30c1c">nvtxRangePushA</a></div><div class="ttdeci">NVTX_DECLSPEC int NVTX_API nvtxRangePushA(const char *message)</div><div class="ttdoc">Starts a nested thread range.</div></div>
<div class="ttc" id="agroup___m_a_r_k_e_r_s___a_n_d___r_a_n_g_e_s_html_ga9e31d7977bcd3b4e64da577908f20e70"><div class="ttname"><a href="group___m_a_r_k_e_r_s___a_n_d___r_a_n_g_e_s.html#ga9e31d7977bcd3b4e64da577908f20e70">nvtxDomainMarkEx</a></div><div class="ttdeci">NVTX_DECLSPEC void NVTX_API nvtxDomainMarkEx(nvtxDomainHandle_t domain, const nvtxEventAttributes_t *eventAttrib)</div><div class="ttdoc">Marks an instantaneous event in the application.</div></div>
<div class="ttc" id="agroup___m_a_r_k_e_r_s___a_n_d___r_a_n_g_e_s_html_gaa31a1079a237d0772f84c56aeda7b26d"><div class="ttname"><a href="group___m_a_r_k_e_r_s___a_n_d___r_a_n_g_e_s.html#gaa31a1079a237d0772f84c56aeda7b26d">nvtxMarkEx</a></div><div class="ttdeci">NVTX_DECLSPEC void NVTX_API nvtxMarkEx(const nvtxEventAttributes_t *eventAttrib)</div><div class="ttdoc">Marks an instantaneous event in the application.</div></div>
<div class="ttc" id="agroup___m_a_r_k_e_r_s___a_n_d___r_a_n_g_e_s_html_gaa8b4b68acc37bdaf14349b25752b26f9"><div class="ttname"><a href="group___m_a_r_k_e_r_s___a_n_d___r_a_n_g_e_s.html#gaa8b4b68acc37bdaf14349b25752b26f9">nvtxMarkA</a></div><div class="ttdeci">NVTX_DECLSPEC void NVTX_API nvtxMarkA(const char *message)</div><div class="ttdoc">Marks an instantaneous event in the application.</div></div>
<div class="ttc" id="agroup___m_a_r_k_e_r_s___a_n_d___r_a_n_g_e_s_html_gadab44822980b42e4b73b19edcd9de92c"><div class="ttname"><a href="group___m_a_r_k_e_r_s___a_n_d___r_a_n_g_e_s.html#gadab44822980b42e4b73b19edcd9de92c">nvtxRangePushEx</a></div><div class="ttdeci">NVTX_DECLSPEC int NVTX_API nvtxRangePushEx(const nvtxEventAttributes_t *eventAttrib)</div><div class="ttdoc">Starts a nested thread range.</div></div>
<div class="ttc" id="agroup___m_a_r_k_e_r_s___a_n_d___r_a_n_g_e_s_html_gadfb180099c39096e890ad698c5d3efab"><div class="ttname"><a href="group___m_a_r_k_e_r_s___a_n_d___r_a_n_g_e_s.html#gadfb180099c39096e890ad698c5d3efab">nvtxRangeStartEx</a></div><div class="ttdeci">NVTX_DECLSPEC nvtxRangeId_t NVTX_API nvtxRangeStartEx(const nvtxEventAttributes_t *eventAttrib)</div><div class="ttdoc">Starts a process range.</div></div>
<div class="ttc" id="agroup___m_a_r_k_e_r_s___a_n_d___r_a_n_g_e_s_html_gaf1cdd49e2d1fde6a62fabf30009adbc0"><div class="ttname"><a href="group___m_a_r_k_e_r_s___a_n_d___r_a_n_g_e_s.html#gaf1cdd49e2d1fde6a62fabf30009adbc0">nvtxDomainRangeStartEx</a></div><div class="ttdeci">NVTX_DECLSPEC nvtxRangeId_t NVTX_API nvtxDomainRangeStartEx(nvtxDomainHandle_t domain, const nvtxEventAttributes_t *eventAttrib)</div><div class="ttdoc">Starts a process range in a domain.</div></div>
<div class="ttc" id="agroup___r_e_s_o_u_r_c_e___n_a_m_i_n_g_html_ga12271bb3f03619d5862bd5a900f9aac1"><div class="ttname"><a href="group___r_e_s_o_u_r_c_e___n_a_m_i_n_g.html#ga12271bb3f03619d5862bd5a900f9aac1">nvtxDomainResourceCreate</a></div><div class="ttdeci">NVTX_DECLSPEC nvtxResourceHandle_t NVTX_API nvtxDomainResourceCreate(nvtxDomainHandle_t domain, nvtxResourceAttributes_t *attribs)</div><div class="ttdoc">Create a resource object to track and associate data with OS and middleware objects.</div></div>
<div class="ttc" id="agroup___r_e_s_o_u_r_c_e___n_a_m_i_n_g_html_ga801e84711db9de7b28235e529b101e4a"><div class="ttname"><a href="group___r_e_s_o_u_r_c_e___n_a_m_i_n_g.html#ga801e84711db9de7b28235e529b101e4a">nvtxNameCategoryA</a></div><div class="ttdeci">NVTX_DECLSPEC void NVTX_API nvtxNameCategoryA(uint32_t category, const char *name)</div><div class="ttdoc">Annotate an NVTX category.</div></div>
<div class="ttc" id="agroup___r_e_s_o_u_r_c_e___n_a_m_i_n_g_html_gaa95f902006e108c6fcca5c76b2d4a2b1"><div class="ttname"><a href="group___r_e_s_o_u_r_c_e___n_a_m_i_n_g.html#gaa95f902006e108c6fcca5c76b2d4a2b1">nvtxDomainResourceDestroy</a></div><div class="ttdeci">NVTX_DECLSPEC void NVTX_API nvtxDomainResourceDestroy(nvtxResourceHandle_t resource)</div><div class="ttdoc">Destroy a resource object to track and associate data with OS and middleware objects.</div></div>
<div class="ttc" id="agroup___r_e_s_o_u_r_c_e___n_a_m_i_n_g_html_gabaaf30c7cfd72033a5521de326eacdab"><div class="ttname"><a href="group___r_e_s_o_u_r_c_e___n_a_m_i_n_g.html#gabaaf30c7cfd72033a5521de326eacdab">nvtxResourceGenericType_t</a></div><div class="ttdeci">nvtxResourceGenericType_t</div><div class="ttdoc">Generic resource type for when a resource class is not available.</div><div class="ttdef"><b>Definition</b> <a href="nv_tools_ext_8h_source.html#l01100">nvToolsExt.h:1101</a></div></div>
<div class="ttc" id="agroup___r_e_s_o_u_r_c_e___n_a_m_i_n_g_html_gaeb7d5b25e1147fc4aaf1f3acb8e719d0"><div class="ttname"><a href="group___r_e_s_o_u_r_c_e___n_a_m_i_n_g.html#gaeb7d5b25e1147fc4aaf1f3acb8e719d0">nvtxNameOsThreadA</a></div><div class="ttdeci">NVTX_DECLSPEC void NVTX_API nvtxNameOsThreadA(uint32_t threadId, const char *name)</div><div class="ttdoc">Annotate an OS thread.</div></div>
<div class="ttc" id="agroup___r_e_s_o_u_r_c_e___n_a_m_i_n_g_html_gaf2898af52be50279355c0ee1f57afbaa"><div class="ttname"><a href="group___r_e_s_o_u_r_c_e___n_a_m_i_n_g.html#gaf2898af52be50279355c0ee1f57afbaa">nvtxDomainNameCategoryA</a></div><div class="ttdeci">NVTX_DECLSPEC void NVTX_API nvtxDomainNameCategoryA(nvtxDomainHandle_t domain, uint32_t category, const char *name)</div><div class="ttdoc">Annotate an NVTX category used within a domain.</div></div>
<div class="ttc" id="agroup___r_e_s_o_u_r_c_e___n_a_m_i_n_g_html_ggabaaf30c7cfd72033a5521de326eacdaba3a4a3e315e274f7d1665b2b4b47dbebb"><div class="ttname"><a href="group___r_e_s_o_u_r_c_e___n_a_m_i_n_g.html#ggabaaf30c7cfd72033a5521de326eacdaba3a4a3e315e274f7d1665b2b4b47dbebb">NVTX_RESOURCE_TYPE_GENERIC_THREAD_POSIX</a></div><div class="ttdeci">@ NVTX_RESOURCE_TYPE_GENERIC_THREAD_POSIX</div><div class="ttdef"><b>Definition</b> <a href="nv_tools_ext_8h_source.html#l01107">nvToolsExt.h:1106</a></div></div>
<div class="ttc" id="agroup___r_e_s_o_u_r_c_e___n_a_m_i_n_g_html_ggabaaf30c7cfd72033a5521de326eacdabab9172fba948d1b324be487c212f6090b"><div class="ttname"><a href="group___r_e_s_o_u_r_c_e___n_a_m_i_n_g.html#ggabaaf30c7cfd72033a5521de326eacdabab9172fba948d1b324be487c212f6090b">NVTX_RESOURCE_TYPE_GENERIC_HANDLE</a></div><div class="ttdeci">@ NVTX_RESOURCE_TYPE_GENERIC_HANDLE</div><div class="ttdef"><b>Definition</b> <a href="nv_tools_ext_8h_source.html#l01104">nvToolsExt.h:1104</a></div></div>
<div class="ttc" id="agroup___r_e_s_o_u_r_c_e___n_a_m_i_n_g_html_ggabaaf30c7cfd72033a5521de326eacdabac874caafa9e3038f4c3302917278f57f"><div class="ttname"><a href="group___r_e_s_o_u_r_c_e___n_a_m_i_n_g.html#ggabaaf30c7cfd72033a5521de326eacdabac874caafa9e3038f4c3302917278f57f">NVTX_RESOURCE_TYPE_GENERIC_POINTER</a></div><div class="ttdeci">@ NVTX_RESOURCE_TYPE_GENERIC_POINTER</div><div class="ttdef"><b>Definition</b> <a href="nv_tools_ext_8h_source.html#l01103">nvToolsExt.h:1103</a></div></div>
<div class="ttc" id="agroup___r_e_s_o_u_r_c_e___n_a_m_i_n_g_html_ggabaaf30c7cfd72033a5521de326eacdabad7cc4f337d6271605c43cac23f2fa65f"><div class="ttname"><a href="group___r_e_s_o_u_r_c_e___n_a_m_i_n_g.html#ggabaaf30c7cfd72033a5521de326eacdabad7cc4f337d6271605c43cac23f2fa65f">NVTX_RESOURCE_TYPE_GENERIC_THREAD_NATIVE</a></div><div class="ttdeci">@ NVTX_RESOURCE_TYPE_GENERIC_THREAD_NATIVE</div><div class="ttdef"><b>Definition</b> <a href="nv_tools_ext_8h_source.html#l01105">nvToolsExt.h:1105</a></div></div>
<div class="ttc" id="agroup___s_t_r_i_n_g___r_e_g_i_s_t_r_a_t_i_o_n_html_gaed4907d1c69789ca32d59788a6386a1f"><div class="ttname"><a href="group___s_t_r_i_n_g___r_e_g_i_s_t_r_a_t_i_o_n.html#gaed4907d1c69789ca32d59788a6386a1f">nvtxDomainRegisterStringA</a></div><div class="ttdeci">NVTX_DECLSPEC nvtxStringHandle_t NVTX_API nvtxDomainRegisterStringA(nvtxDomainHandle_t domain, const char *string)</div><div class="ttdoc">Register a string.</div></div>
<div class="ttc" id="anv_tools_ext_8h_html_ab89b5c89bfdf240e0ea83b6ab2f89fdf"><div class="ttname"><a href="nv_tools_ext_8h.html#ab89b5c89bfdf240e0ea83b6ab2f89fdf">nvtxInitialize</a></div><div class="ttdeci">NVTX_DECLSPEC void NVTX_API nvtxInitialize(const void *reserved)</div><div class="ttdoc">Force initialization (optional)</div></div>
<div class="ttc" id="astructnvtx_event_attributes__v2_html"><div class="ttname"><a href="structnvtx_event_attributes__v2.html">nvtxEventAttributes_v2</a></div><div class="ttdoc">Event Attribute Structure. .</div><div class="ttdef"><b>Definition</b> <a href="nv_tools_ext_8h_source.html#l00567">nvToolsExt.h:568</a></div></div>
<div class="ttc" id="astructnvtx_event_attributes__v2_html_a307b3b9949304b301e1b6d1346c71530"><div class="ttname"><a href="structnvtx_event_attributes__v2.html#a307b3b9949304b301e1b6d1346c71530">nvtxEventAttributes_v2::version</a></div><div class="ttdeci">uint16_t version</div><div class="ttdoc">Version flag of the structure.</div><div class="ttdef"><b>Definition</b> <a href="nv_tools_ext_8h_source.html#l00576">nvToolsExt.h:576</a></div></div>
<div class="ttc" id="astructnvtx_event_attributes__v2_html_a67e51604f4f074d3a896a2475b36a8f0"><div class="ttname"><a href="structnvtx_event_attributes__v2.html#a67e51604f4f074d3a896a2475b36a8f0">nvtxEventAttributes_v2::colorType</a></div><div class="ttdeci">int32_t colorType</div><div class="ttdoc">Color type specified in this attribute structure.</div><div class="ttdef"><b>Definition</b> <a href="nv_tools_ext_8h_source.html#l00606">nvToolsExt.h:606</a></div></div>
<div class="ttc" id="astructnvtx_event_attributes__v2_html_a90b5726d65e2665b558668eada26ffb9"><div class="ttname"><a href="structnvtx_event_attributes__v2.html#a90b5726d65e2665b558668eada26ffb9">nvtxEventAttributes_v2::size</a></div><div class="ttdeci">uint16_t size</div><div class="ttdoc">Size of the structure.</div><div class="ttdef"><b>Definition</b> <a href="nv_tools_ext_8h_source.html#l00584">nvToolsExt.h:584</a></div></div>
<div class="ttc" id="astructnvtx_event_attributes__v2_html_ab92717e2aed2888cd99ecdf6c4681e45"><div class="ttname"><a href="structnvtx_event_attributes__v2.html#ab92717e2aed2888cd99ecdf6c4681e45">nvtxEventAttributes_v2::payloadType</a></div><div class="ttdeci">int32_t payloadType</div><div class="ttdoc">Payload type specified in this attribute structure.</div><div class="ttdef"><b>Definition</b> <a href="nv_tools_ext_8h_source.html#l00622">nvToolsExt.h:622</a></div></div>
<div class="ttc" id="astructnvtx_event_attributes__v2_html_ac2c886998107953b9ca44c096650ac6f"><div class="ttname"><a href="structnvtx_event_attributes__v2.html#ac2c886998107953b9ca44c096650ac6f">nvtxEventAttributes_v2::message</a></div><div class="ttdeci">nvtxMessageValue_t message</div><div class="ttdoc">Message assigned to this attribute structure..</div><div class="ttdef"><b>Definition</b> <a href="nv_tools_ext_8h_source.html#l00656">nvToolsExt.h:656</a></div></div>
<div class="ttc" id="astructnvtx_event_attributes__v2_html_aea6394028b2357cc25b41af32f9a7c8b"><div class="ttname"><a href="structnvtx_event_attributes__v2.html#aea6394028b2357cc25b41af32f9a7c8b">nvtxEventAttributes_v2::messageType</a></div><div class="ttdeci">int32_t messageType</div><div class="ttdoc">Message type specified in this attribute structure.</div><div class="ttdef"><b>Definition</b> <a href="nv_tools_ext_8h_source.html#l00650">nvToolsExt.h:650</a></div></div>
<div class="ttc" id="astructnvtx_event_attributes__v2_html_aeddc617cf06c8e83dbfaf3968ad04a5d"><div class="ttname"><a href="structnvtx_event_attributes__v2.html#aeddc617cf06c8e83dbfaf3968ad04a5d">nvtxEventAttributes_v2::color</a></div><div class="ttdeci">uint32_t color</div><div class="ttdoc">Color assigned to this event..</div><div class="ttdef"><b>Definition</b> <a href="nv_tools_ext_8h_source.html#l00612">nvToolsExt.h:612</a></div></div>
<div class="ttc" id="astructnvtx_event_attributes__v2_html_afb670b7abeb2d588c7157c08248e3665"><div class="ttname"><a href="structnvtx_event_attributes__v2.html#afb670b7abeb2d588c7157c08248e3665">nvtxEventAttributes_v2::category</a></div><div class="ttdeci">uint32_t category</div><div class="ttdoc">ID of the category the event is assigned to.</div><div class="ttdef"><b>Definition</b> <a href="nv_tools_ext_8h_source.html#l00597">nvToolsExt.h:597</a></div></div>
<div class="ttc" id="astructnvtx_resource_attributes__v0_html"><div class="ttname"><a href="structnvtx_resource_attributes__v0.html">nvtxResourceAttributes_v0</a></div><div class="ttdoc">Resource Attribute Structure. .</div><div class="ttdef"><b>Definition</b> <a href="nv_tools_ext_8h_source.html#l01186">nvToolsExt.h:1187</a></div></div>
<div class="ttc" id="astructnvtx_resource_attributes__v0_html_a23bd2e672a9fe0b600e7d3599da7443a"><div class="ttname"><a href="structnvtx_resource_attributes__v0.html#a23bd2e672a9fe0b600e7d3599da7443a">nvtxResourceAttributes_v0::messageType</a></div><div class="ttdeci">int32_t messageType</div><div class="ttdoc">Message type specified in this attribute structure.</div><div class="ttdef"><b>Definition</b> <a href="nv_tools_ext_8h_source.html#l01235">nvToolsExt.h:1235</a></div></div>
<div class="ttc" id="astructnvtx_resource_attributes__v0_html_a3f251637098a16e51e3dd16f6f223282"><div class="ttname"><a href="structnvtx_resource_attributes__v0.html#a3f251637098a16e51e3dd16f6f223282">nvtxResourceAttributes_v0::size</a></div><div class="ttdeci">uint16_t size</div><div class="ttdoc">Size of the structure.</div><div class="ttdef"><b>Definition</b> <a href="nv_tools_ext_8h_source.html#l01203">nvToolsExt.h:1203</a></div></div>
<div class="ttc" id="astructnvtx_resource_attributes__v0_html_a6aa99e7e990a00e128b80bf9199bcd7a"><div class="ttname"><a href="structnvtx_resource_attributes__v0.html#a6aa99e7e990a00e128b80bf9199bcd7a">nvtxResourceAttributes_v0::version</a></div><div class="ttdeci">uint16_t version</div><div class="ttdoc">Version flag of the structure.</div><div class="ttdef"><b>Definition</b> <a href="nv_tools_ext_8h_source.html#l01195">nvToolsExt.h:1195</a></div></div>
<div class="ttc" id="astructnvtx_resource_attributes__v0_html_a6fb8c53dcd2860bada12560d5b2e586f"><div class="ttname"><a href="structnvtx_resource_attributes__v0.html#a6fb8c53dcd2860bada12560d5b2e586f">nvtxResourceAttributes_v0::message</a></div><div class="ttdeci">nvtxMessageValue_t message</div><div class="ttdoc">Message assigned to this attribute structure..</div><div class="ttdef"><b>Definition</b> <a href="nv_tools_ext_8h_source.html#l01241">nvToolsExt.h:1241</a></div></div>
<div class="ttc" id="astructnvtx_resource_attributes__v0_html_acec361e5bafce002e93a604e36bdf31b"><div class="ttname"><a href="structnvtx_resource_attributes__v0.html#acec361e5bafce002e93a604e36bdf31b">nvtxResourceAttributes_v0::identifierType</a></div><div class="ttdeci">int32_t identifierType</div><div class="ttdoc">Identifier type specifies how to interpret the identifier field.</div><div class="ttdef"><b>Definition</b> <a href="nv_tools_ext_8h_source.html#l01213">nvToolsExt.h:1213</a></div></div>
<div class="ttc" id="aunionnvtx_event_attributes__v2_1_1payload__t_html"><div class="ttname"><a href="unionnvtx_event_attributes__v2_1_1payload__t.html">nvtxEventAttributes_v2::payload_t</a></div><div class="ttdoc">Payload assigned to this event..</div><div class="ttdef"><b>Definition</b> <a href="nv_tools_ext_8h_source.html#l00632">nvToolsExt.h:633</a></div></div>
<div class="ttc" id="aunionnvtx_message_value__t_html"><div class="ttname"><a href="unionnvtx_message_value__t.html">nvtxMessageValue_t</a></div><div class="ttdef"><b>Definition</b> <a href="nv_tools_ext_8h_source.html#l00432">nvToolsExt.h:433</a></div></div>
<div class="ttc" id="aunionnvtx_resource_attributes__v0_1_1identifier__t_html"><div class="ttname"><a href="unionnvtx_resource_attributes__v0_1_1identifier__t.html">nvtxResourceAttributes_v0::identifier_t</a></div><div class="ttdoc">Identifier for the resource. .</div><div class="ttdef"><b>Definition</b> <a href="nv_tools_ext_8h_source.html#l01222">nvToolsExt.h:1223</a></div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>
